{"componentChunkName":"component---src-pages-index-tsx","path":"/","result":{"data":{"homeYaml":{"tabs_posts":[{"posts":["mapping-arrays/","funcoes/","if-else-for-while/"],"topic":"Iniciante"},{"posts":["criar-contrato-simples/","call-fallback-delegatecall/","transfer-send-call/"],"topic":"Intermediário"},{"posts":["trabalhando-com-proxy/","assinaturas-e-hashing-keccak/","contrato-para-multichamadas/"],"topic":"Avançado"},{"posts":["token-erc20/","token-erc721/","financiamento-coletivo-crowd-fund/"],"topic":"Aplicações"},{"posts":["ataque-de-reentrada/","ocultar-script-malicioso/","honeypot/"],"topic":"Hacks"},{"posts":["sistema-de-staking/","sistema-de-preco-chainlink-oracle/","sistema-de-cofre/"],"topic":"DeFi"}],"about_section":[{"desc":"<p>Example</p>","icon":"<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"50\" height=\"50\" viewBox=\"0 0 50 50\" fill=\"none\"><style>.a{fill:#F4A444;}</style><path d=\"M49.2 16.1H45.8V11.6C45.8 11.4 45.7 11.1 45.6 11 45.4 10.8 45.2 10.7 45 10.7 43.9 10.7 42.7 10.8 41.6 10.9L41.7 12.6C42.5 12.6 43.3 12.5 44.2 12.5V39C37.8 39 31.5 40.7 25.8 43.9V32.1H24.2V43.9C18.5 40.7 12.2 39 5.8 39V12.5C6.7 12.5 7.5 12.6 8.3 12.6L8.4 10.9C7.3 10.8 6.1 10.7 5 10.7 4.8 10.7 4.6 10.8 4.4 11 4.3 11.1 4.2 11.4 4.2 11.6V16.1H0.8C0.6 16.1 0.4 16.2 0.2 16.3 0.1 16.5 0 16.7 0 17V49.1C0 49.3 0.1 49.6 0.2 49.7 0.4 49.9 0.6 50 0.8 50H49.2C49.4 50 49.6 49.9 49.8 49.7 49.9 49.6 50 49.3 50 49.1V17C50 16.7 49.9 16.5 49.8 16.3 49.6 16.2 49.4 16.1 49.2 16.1ZM45 40.8C45.2 40.8 45.4 40.7 45.6 40.5 45.7 40.3 45.8 40.1 45.8 39.9V17.9H48.3V44.6H28.2C33.5 42 39.2 40.7 45 40.8ZM1.7 17.9H4.2V39.9C4.2 40.1 4.3 40.3 4.4 40.5 4.6 40.7 4.8 40.8 5 40.8 10.8 40.7 16.5 42 21.8 44.6H1.7V17.9ZM1.7 48.2V46.4H48.3V48.2H1.7Z\" class=\"a\"/><path d=\"M35.8 5C35.6 4.1 35.2 3.3 34.5 2.7 33.8 2.1 33 1.7 32.1 1.7 31.7 1.7 31.3 1.8 30.9 1.9 30.6 1.3 30.2 0.9 29.6 0.5 29.1 0.2 28.5 0 27.9 0 27.3 0 26.8 0.2 26.3 0.4 25.8 0.7 25.3 1.1 25 1.6 24.7 1.1 24.2 0.7 23.7 0.4 23.2 0.2 22.7 0 22.1 0 21.5 0 20.9 0.2 20.4 0.5 19.8 0.9 19.4 1.3 19.1 1.9 18.7 1.8 18.3 1.7 17.9 1.7 17 1.7 16.2 2.1 15.5 2.7 14.8 3.3 14.4 4.1 14.3 5 13.2 5.1 12.3 5.6 11.6 6.4 10.9 7.2 10.6 8.2 10.6 9.3 10.6 9.8 10.7 10.3 10.8 10.8 10.3 11.2 9.9 11.7 9.6 12.3 9.4 12.9 9.2 13.5 9.2 14.2 9.1 14.9 9.3 15.5 9.5 16.1 9.8 16.7 10.1 17.3 10.6 17.7 10.1 18.4 9.9 19.3 9.9 20.2 9.9 21 10.1 21.8 10.5 22.5 10.8 23.2 11.4 23.7 12 24.1 12 24.2 12 24.3 12 24.4 12 25.5 12.4 26.6 13.1 27.4 13.7 28.2 14.7 28.6 15.7 28.7 16.4 28.7 17.1 28.4 17.7 28 18.1 28.7 18.6 29.3 19.2 29.7 19.8 30.1 20.6 30.3 21.3 30.4 22 30.4 22.8 30.2 23.4 29.8 24.1 29.5 24.6 28.9 25 28.2 25.4 28.9 25.9 29.5 26.6 29.8 27.2 30.2 28 30.4 28.7 30.4 29.4 30.3 30.2 30.1 30.8 29.7 31.4 29.3 31.9 28.7 32.3 28 32.9 28.4 33.6 28.7 34.3 28.7 35.3 28.6 36.3 28.2 37 27.4 37.6 26.6 38 25.5 38 24.4 38 24.3 38 24.2 38 24.1 38.6 23.7 39.2 23.2 39.6 22.5 39.9 21.8 40.1 21 40.1 20.2 40.1 19.3 39.9 18.4 39.4 17.7 39.9 17.3 40.2 16.7 40.5 16.1 40.7 15.5 40.9 14.9 40.8 14.2 40.8 13.5 40.6 12.9 40.4 12.3 40.1 11.7 39.7 11.2 39.2 10.8 39.3 10.3 39.4 9.8 39.4 9.3 39.4 8.2 39.1 7.2 38.4 6.4 37.7 5.6 36.8 5.1 35.8 5ZM21.4 28.6C20.8 28.5 20.2 28.3 19.7 27.9 19.3 27.4 18.9 26.8 18.8 26.2 18.8 26 18.7 25.9 18.6 25.8 18.5 25.6 18.3 25.6 18.1 25.5 18.1 25.5 18.1 25.5 18 25.5 17.9 25.5 17.7 25.6 17.6 25.6 17.5 25.7 17.4 25.8 17.3 25.9 17.1 26.2 16.9 26.4 16.6 26.6 16.4 26.8 16 26.9 15.7 26.9 15.1 26.8 14.6 26.6 14.2 26.1 13.9 25.6 13.7 25 13.7 24.4 13.7 24.2 13.7 24 13.8 23.7 13.8 23.6 13.8 23.5 13.8 23.4 13.8 23.3 13.7 23.1 13.7 23 13.6 22.9 13.6 22.9 13.5 22.8 13.4 22.7 13.3 22.7 13.2 22.6 12.7 22.5 12.3 22.2 12 21.7 11.7 21.3 11.5 20.8 11.5 20.2 11.5 19.8 11.6 19.5 11.8 19.1 11.9 18.8 12.1 18.4 12.4 18.2 12.5 18.1 12.6 18 12.7 17.8 12.7 17.7 12.8 17.5 12.7 17.4 12.7 17.2 12.7 17.1 12.6 16.9 12.5 16.8 12.3 16.7 12.2 16.7 11.8 16.5 11.5 16.1 11.2 15.7 11 15.3 10.8 14.8 10.8 14.3 10.8 13.8 11 13.4 11.2 13 11.5 12.5 11.8 12.2 12.2 12 12.3 12 12.4 11.9 12.5 11.8 12.6 11.7 12.7 11.6 12.7 11.5 12.7 11.3 12.8 11.2 12.7 11.1 12.7 10.9 12.7 10.8 12.6 10.7 12.4 10.3 12.3 9.8 12.3 9.3 12.2 8.7 12.4 8.1 12.8 7.6 13.2 7.2 13.7 6.9 14.3 6.8 14.5 6.8 14.6 6.9 14.8 6.9 14.9 7 15 7 15.2 6.9 15.3 6.9 15.4 6.9 15.5 6.8 15.6 6.7 15.7 6.6 15.8 6.4 15.8 6.3 15.8 6.2 15.8 6 15.8 6 15.8 6 15.8 5.9 15.8 5.3 16 4.7 16.4 4.3 16.8 3.8 17.3 3.5 17.9 3.5 18.3 3.5 18.6 3.6 19 3.9 19.1 4 19.2 4 19.3 4 19.5 4.1 19.6 4 19.7 4 19.8 4 20 3.9 20 3.8 20.1 3.7 20.2 3.6 20.3 3.4 20.4 3 20.6 2.6 20.9 2.3 21.3 2 21.7 1.8 22.1 1.8 22.6 1.8 23.1 2 23.4 2.3 23.8 2.7 24 3.2 24.1 3.7 24.1 3.7 24.1 3.8 24.2 3.9V25.3C24.2 26.1 23.9 26.9 23.4 27.5 22.9 28.1 22.2 28.5 21.4 28.6ZM37.8 16.7C37.7 16.7 37.5 16.8 37.4 16.9 37.3 17.1 37.3 17.2 37.3 17.4 37.2 17.5 37.3 17.7 37.3 17.8 37.4 18 37.5 18.1 37.6 18.2 37.9 18.4 38.1 18.8 38.2 19.1 38.4 19.5 38.5 19.8 38.5 20.2 38.5 20.8 38.3 21.3 38 21.7 37.7 22.2 37.3 22.5 36.8 22.6 36.7 22.7 36.6 22.7 36.5 22.8 36.4 22.9 36.4 22.9 36.3 23 36.3 23.1 36.2 23.3 36.2 23.4 36.2 23.5 36.2 23.6 36.2 23.7 36.3 24 36.3 24.2 36.3 24.4 36.3 25 36.1 25.6 35.8 26.1 35.4 26.6 34.9 26.8 34.3 26.9 34 26.9 33.6 26.8 33.4 26.6 33.1 26.4 32.9 26.2 32.7 25.9 32.6 25.8 32.5 25.7 32.3 25.6 32.2 25.5 32 25.5 31.9 25.5 31.7 25.6 31.5 25.6 31.4 25.7 31.3 25.9 31.2 26 31.2 26.2 31.1 26.8 30.7 27.4 30.3 27.9 29.8 28.3 29.2 28.5 28.6 28.6 27.8 28.5 27.1 28.1 26.6 27.5 26.1 26.9 25.8 26.1 25.8 25.3V3.9C25.9 3.8 25.9 3.7 25.9 3.7 26 3.2 26.2 2.7 26.6 2.3 26.9 2 27.4 1.8 27.9 1.8 28.3 1.8 28.7 2 29.1 2.3 29.4 2.6 29.6 3 29.8 3.4 29.8 3.6 29.9 3.7 30 3.8 30 3.9 30.2 4 30.3 4 30.4 4 30.5 4.1 30.7 4 30.8 4 30.9 4 31 3.9 31.4 3.6 31.7 3.5 32.1 3.5 32.7 3.5 33.2 3.8 33.6 4.2 34 4.7 34.2 5.3 34.2 5.9 34.2 5.9 34.2 6 34.2 6 34.1 6.2 34.2 6.3 34.2 6.4 34.3 6.6 34.4 6.7 34.5 6.8 34.6 6.8 34.7 6.9 34.8 6.9 35 7 35.1 7 35.2 6.9 35.4 6.9 35.5 6.8 35.7 6.8 36.3 6.9 36.8 7.1 37.2 7.6 37.6 8.1 37.8 8.7 37.7 9.3 37.7 9.8 37.6 10.3 37.4 10.7 37.3 10.8 37.3 10.9 37.3 11.1 37.2 11.2 37.3 11.3 37.3 11.5 37.3 11.6 37.4 11.7 37.5 11.8 37.6 11.9 37.7 12 37.8 12 38.2 12.2 38.5 12.5 38.8 13 39 13.4 39.2 13.8 39.2 14.3 39.2 14.8 39 15.3 38.8 15.7 38.5 16.1 38.2 16.4 37.8 16.7L37.8 16.7Z\" class=\"a\"/><path d=\"M20.8 16.1C20.8 15.6 20.7 15.1 20.5 14.6 20.3 14.1 20 13.7 19.7 13.4 20 13.1 20.3 12.7 20.5 12.2 20.7 11.7 20.8 11.2 20.8 10.7H19.2C19.2 11.2 19 11.6 18.7 12 18.4 12.3 17.9 12.5 17.5 12.5 17.1 12.5 16.6 12.3 16.3 12 16 11.6 15.8 11.2 15.8 10.7H14.2C14.2 11.7 14.5 12.6 15.1 13.2 15.8 13.9 16.6 14.3 17.5 14.3 17.9 14.3 18.4 14.5 18.7 14.8 19 15.1 19.2 15.6 19.2 16.1H20.8Z\" class=\"a\"/><path d=\"M19.2 19.6V21.4C19.4 21.4 19.6 21.4 19.8 21.5 20.1 21.6 20.3 21.7 20.4 21.9 20.6 22.1 20.7 22.3 20.8 22.5 20.8 22.7 20.9 23 20.8 23.2V24.1H22.5V23.2C22.5 22.7 22.5 22.3 22.3 21.8 22.2 21.4 21.9 21 21.6 20.6 21.3 20.3 20.9 20 20.5 19.8 20.1 19.7 19.6 19.6 19.2 19.6Z\" class=\"a\"/><path d=\"M14.2 15.2V17C14.5 17 14.9 17.1 15.2 17.3 15.5 17.6 15.7 17.9 15.8 18.3 15.3 18.9 15 19.7 15 20.5 15 21.5 15.4 22.4 16 23.1 16.6 23.7 17.4 24.1 18.3 24.1V22.3C17.9 22.3 17.5 22.1 17.2 21.8 16.8 21.5 16.7 21 16.7 20.5 16.7 20.1 16.8 19.6 17.2 19.3 17.5 18.9 17.9 18.8 18.3 18.8V17C17.9 17 17.5 17 17.2 17.2 16.9 16.6 16.5 16.1 15.9 15.7 15.4 15.4 14.8 15.2 14.2 15.2Z\" class=\"a\"/><path d=\"M20 6.6C19.7 6.2 19.3 5.9 18.9 5.7 18.4 5.5 18 5.4 17.5 5.4V7.1C17.9 7.1 18.4 7.3 18.7 7.7 19 8 19.2 8.5 19.2 8.9H20.8C20.8 8.5 21 8 21.3 7.7 21.6 7.3 22.1 7.1 22.5 7.1V5.4C22 5.4 21.6 5.5 21.1 5.7 20.7 5.9 20.3 6.2 20 6.6Z\" class=\"a\"/><path d=\"M27.5 23.2V24.1H29.2V23.2C29.1 23 29.2 22.7 29.2 22.5 29.3 22.3 29.4 22.1 29.6 21.9 29.7 21.7 29.9 21.6 30.2 21.5 30.4 21.4 30.6 21.4 30.8 21.4V19.6C30.4 19.6 29.9 19.7 29.5 19.8 29.1 20 28.7 20.3 28.4 20.6 28.1 21 27.8 21.4 27.7 21.8 27.5 22.3 27.5 22.7 27.5 23.2Z\" class=\"a\"/><path d=\"M32.8 17.2C32.5 17 32.1 17 31.7 17V18.8C32.1 18.8 32.5 18.9 32.8 19.3 33.2 19.6 33.3 20.1 33.3 20.5 33.3 21 33.2 21.5 32.8 21.8 32.5 22.1 32.1 22.3 31.7 22.3V24.1C32.6 24.1 33.4 23.7 34 23.1 34.6 22.4 35 21.5 35 20.5 35 19.7 34.7 18.9 34.2 18.3 34.3 17.9 34.5 17.6 34.8 17.3 35.1 17.1 35.5 17 35.8 17V15.2C35.2 15.2 34.6 15.4 34.1 15.7 33.5 16.1 33.1 16.6 32.8 17.2Z\" class=\"a\"/><path d=\"M32.5 12.5C32.1 12.5 31.6 12.3 31.3 12 31 11.6 30.8 11.2 30.8 10.7H29.2C29.2 11.2 29.3 11.7 29.5 12.2 29.7 12.7 30 13.1 30.3 13.4 30 13.7 29.7 14.1 29.5 14.6 29.3 15.1 29.2 15.6 29.2 16.1H30.8C30.8 15.6 31 15.1 31.3 14.8 31.6 14.5 32.1 14.3 32.5 14.3 33.4 14.3 34.2 13.9 34.9 13.2 35.5 12.6 35.8 11.7 35.8 10.7H34.2C34.2 11.2 34 11.6 33.7 12 33.4 12.3 32.9 12.5 32.5 12.5Z\" class=\"a\"/><path d=\"M29.2 8.9H30.8C30.8 8.5 31 8 31.3 7.7 31.6 7.3 32.1 7.1 32.5 7.1V5.4C32 5.4 31.6 5.5 31.1 5.7 30.7 5.9 30.3 6.2 30 6.6 29.7 6.2 29.3 5.9 28.9 5.7 28.4 5.5 28 5.4 27.5 5.4V7.1C27.9 7.1 28.4 7.3 28.7 7.7 29 8 29.2 8.5 29.2 8.9Z\" class=\"a\"/><path d=\"M18 34.6C18.6 34.8 19.3 34.9 20 34.9 20.5 34.9 21 34.8 21.5 34.7L20.9 33C20.1 33.2 19.3 33.2 18.6 32.9 18.1 32.7 17.7 32.5 17.4 32.1 17 31.8 16.8 31.4 16.6 30.9L15 31.5C15.3 32.3 15.7 32.9 16.2 33.4 16.7 33.9 17.3 34.3 18 34.6Z\" class=\"a\"/><path d=\"M12.4 34.2C13.1 36.1 14.5 37.7 16.3 38.6 18.1 39.4 20.1 39.5 22 38.8L21.4 37.1C19.9 37.7 18.4 37.6 17 37 15.6 36.3 14.5 35.1 14 33.5L12.4 34.2Z\" class=\"a\"/><path d=\"M34.7 31.6L33.1 30.9C32.8 31.8 32.2 32.5 31.4 32.9 30.6 33.3 29.6 33.3 28.8 33L28.2 34.7C28.8 34.9 29.5 35 30.1 35 30.8 35 31.4 34.8 32 34.5 32.6 34.2 33.2 33.8 33.6 33.3 34.1 32.8 34.4 32.2 34.7 31.6Z\" class=\"a\"/><path d=\"M30.7 39.3C32.2 39.3 33.6 38.8 34.9 37.9 36.1 37 37.1 35.7 37.6 34.2L36 33.5C35.5 35.1 34.4 36.3 33 37 31.6 37.6 30.1 37.7 28.6 37.1L28 38.8C28.9 39.1 29.8 39.3 30.7 39.3Z\" class=\"a\"/></svg>\n","title":"Example"}]},"allMdx":{"nodes":[{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos aprender a como criar um sistema de Swap estável AMM através de contrato inteligente.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAGAAAAgMAAAAAAAAAAAAAAAAAAAQBAgP/xAAUAQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIQAxAAAAFxjYJLB//EABoQAAICAwAAAAAAAAAAAAAAAAISAREEECH/2gAIAQEAAQUCGayDeBG1WG7r/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPwE//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPwE//8QAHRAAAgICAwEAAAAAAAAAAAAAAREAAjFRAxASYf/aAAgBAQAGPwIg8hNrNDUJDt8geZ6Ce5nr/8QAGxAAAgIDAQAAAAAAAAAAAAAAAREAIRAxQfH/2gAIAQEAAT8hZSCOghPsHFOERBSWIQIB2lmLzx//2gAMAwEAAgADAAAAEMDP/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPxA//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPxA//8QAIBABAQABAQkAAAAAAAAAAAAAAREAIRAxQVFhgZHR4f/aAAgBAQABPxAavgac0E4PrrjMj0mvLGIMFJR7aZcVaQw5Xfgnz2f/2Q==","aspectRatio":1.5151515151515151,"src":"/static/20d3cc15810bf9257fb175a4ee49d2bc/0cb3d/capa.jpg","srcSet":"/static/20d3cc15810bf9257fb175a4ee49d2bc/f836f/capa.jpg 200w,\n/static/20d3cc15810bf9257fb175a4ee49d2bc/2244e/capa.jpg 400w,\n/static/20d3cc15810bf9257fb175a4ee49d2bc/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"sistema-de-swap-estavel-amm/","tags":["Avançado","DeFi"],"title":"Como criar um sistema de Swap estável AMM"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos aprender a como criar um produto constante AMM através de contrato inteligente.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAGAAAAwEBAAAAAAAAAAAAAAAAAAEEAgP/xAAUAQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIQAxAAAAGyjqxmg//EABsQAAIBBQAAAAAAAAAAAAAAAAISEQEEECEi/9oACAEBAAEFAhrFwbiIyq9bx//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQMBAT8BP//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQIBAT8BP//EAB0QAAICAgMBAAAAAAAAAAAAAAERAAIxUQMQEnH/2gAIAQEABj8CIPITazQ1GHY6geZ6CfyZ6//EABsQAQACAwEBAAAAAAAAAAAAAAEAESExQRDx/9oACAEBAAE/IbKQo6ESaRxi4khqmSIxB07Mr5+f/9oADAMBAAIAAwAAABDgz//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQMBAT8QP//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQIBAT8QP//EAB4QAQEAAQMFAAAAAAAAAAAAAAERACFBcVFhgZHR/9oACAEBAAE/EBq+BpzQTZ+d8acSk17GMQYKSj40w9FkihzlHj04WF1d8//Z","aspectRatio":1.5151515151515151,"src":"/static/88c42a86253e0e291f24f1bb34dcc90c/0cb3d/capa.jpg","srcSet":"/static/88c42a86253e0e291f24f1bb34dcc90c/f836f/capa.jpg 200w,\n/static/88c42a86253e0e291f24f1bb34dcc90c/2244e/capa.jpg 400w,\n/static/88c42a86253e0e291f24f1bb34dcc90c/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"produto-constante-amm/","tags":["Intermediário","DeFi"],"title":"Como criar um produto constante AMM"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos aprender a como criar uma soma constante AMM através de contrato inteligente.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAGAAAAwEBAAAAAAAAAAAAAAAAAAEEAgP/xAAUAQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIQAxAAAAGyjqxmg//EABoQAAICAwAAAAAAAAAAAAAAAAISAREEECH/2gAIAQEAAQUCGayDcRG1WG7r/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPwE//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPwE//8QAHBAAAgICAwAAAAAAAAAAAAAAAREAAjFRAxAS/9oACAEBAAY/AiDyE2s0NRh2OoHmegnM9f/EABsQAAIDAAMAAAAAAAAAAAAAAAERACExEEHx/9oACAEBAAE/IWUgjgQiUjpThEQUliGiAelWYvPj/9oADAMBAAIAAwAAABDgz//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQMBAT8QP//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQIBAT8QP//EAB4QAQEAAQMFAAAAAAAAAAAAAAERACFRYRBBgZHR/9oACAEBAAE/EBq+BpzQTs/OcacSk17GMQYKSj40wwCkjhtcrzm3p//Z","aspectRatio":1.5151515151515151,"src":"/static/b26701cdc19f67714514d269fb75958c/0cb3d/capa.jpg","srcSet":"/static/b26701cdc19f67714514d269fb75958c/f836f/capa.jpg 200w,\n/static/b26701cdc19f67714514d269fb75958c/2244e/capa.jpg 400w,\n/static/b26701cdc19f67714514d269fb75958c/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"soma-constante-amm/","tags":["Intermediário","DeFi"],"title":"Como criar uma soma constante AMM"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos aprender a como criar um sistema de cofre para seu projeto, token ou jogo NFT.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAFwAAAwEAAAAAAAAAAAAAAAAAAAIEA//EABQBAQAAAAAAAAAAAAAAAAAAAAD/2gAMAwEAAhADEAAAAbKN2FGD/8QAGhAAAgIDAAAAAAAAAAAAAAAAAhIBEQQQIf/aAAgBAQABBQIZrINxEbVYbuv/xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAEDAQE/AT//xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAECAQE/AT//xAAcEAACAgIDAAAAAAAAAAAAAAABEQACMVEDEBL/2gAIAQEABj8CIPITazQ1GHY6geZ6AD3M9f/EABwQAAICAgMAAAAAAAAAAAAAAAERACEQMUFh8f/aAAgBAQABPyFlII6CESkcKcIiCksTUDquLwx//9oADAMBAAIAAwAAABDAz//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQMBAT8QP//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQIBAT8QP//EAB8QAQACAQMFAAAAAAAAAAAAAAEAESEQQVFhgZHR8P/aAAgBAQABPxAbXwNnMCbPrrGnEsrXkRiDBSrHtiZyGU0qOLn0Gn//2Q==","aspectRatio":1.5151515151515151,"src":"/static/8b6e2c4e5798594e93b566abaad54ae3/0cb3d/capa.jpg","srcSet":"/static/8b6e2c4e5798594e93b566abaad54ae3/f836f/capa.jpg 200w,\n/static/8b6e2c4e5798594e93b566abaad54ae3/2244e/capa.jpg 400w,\n/static/8b6e2c4e5798594e93b566abaad54ae3/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"sistema-de-cofre/","tags":["Intermediário","DeFi"],"title":"Como criar um sistema de Cofre"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos aprender a como criar um sistema de Staking de Recompensas para seu projeto, token ou jogo NFT.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAGAAAAgMAAAAAAAAAAAAAAAAAAAQBAgP/xAAUAQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIQAxAAAAFxjYJLB//EABkQAAMBAQEAAAAAAAAAAAAAAAECERIEEP/aAAgBAQABBQJTOh9hVucii+f/xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAEDAQE/AT//xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAECAQE/AT//xAAcEAABBQADAAAAAAAAAAAAAAABAAIRMVEDEBL/2gAIAQEABj8CIPIS50wMUtlxxCbXoXqvr//EABwQAQACAQUAAAAAAAAAAAAAAAEAESEQMUFh0f/aAAgBAQABPyGykKOwiWguGLiSGqZI3QDqgt40/9oADAMBAAIAAwAAABCQz//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQMBAT8QP//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQIBAT8QP//EAB0QAQACAgIDAAAAAAAAAAAAAAEAESFhMYFBUdH/2gAIAQEAAT8QG18DZzAnh+bh/AsrXZjEGClWPWIdrykFU28xOWPoBAornc//2Q==","aspectRatio":1.5151515151515151,"src":"/static/1f6739d05d898366367ca4e25859d4c9/0cb3d/capa.jpg","srcSet":"/static/1f6739d05d898366367ca4e25859d4c9/f836f/capa.jpg 200w,\n/static/1f6739d05d898366367ca4e25859d4c9/2244e/capa.jpg 400w,\n/static/1f6739d05d898366367ca4e25859d4c9/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"sistema-de-staking/","tags":["Intermediário","Avançado","DeFi"],"title":"Como criar um sistema de Staking de Recompensas"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos aprender a como criar um sistema de preços Chainlink Oracle para seu projeto, token ou jogo NFT.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAGAAAAwEBAAAAAAAAAAAAAAAAAAEEAgP/xAAUAQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIQAxAAAAGyjqxmg//EABoQAAICAwAAAAAAAAAAAAAAAAECERIEECH/2gAIAQEAAQUCUxkPcKs1Ki3df//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQMBAT8BP//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQIBAT8BP//EABwQAAICAgMAAAAAAAAAAAAAAAERAAIxUQMQEv/aAAgBAQAGPwIg8hNrNDUdXY6geZ6Ccz1//8QAGxABAAICAwAAAAAAAAAAAAAAAQARITEQQfH/2gAIAQEAAT8hspCjoRLQXTFxJDVMkwgHtqV4cf/aAAwDAQACAAMAAAAQsM//xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAEDAQE/ED//xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAECAQE/ED//xAAdEAEBAAEFAQEAAAAAAAAAAAABEQAhQWFxgTHR/9oACAEBAAE/EBq+BpzQTZ/OcP4FJr04xBgpKPmmAgJI1Tv7gKbeuBCW85//2Q==","aspectRatio":1.5151515151515151,"src":"/static/1384d933f5cc722c570050af4b7f51ee/0cb3d/capa.jpg","srcSet":"/static/1384d933f5cc722c570050af4b7f51ee/f836f/capa.jpg 200w,\n/static/1384d933f5cc722c570050af4b7f51ee/2244e/capa.jpg 400w,\n/static/1384d933f5cc722c570050af4b7f51ee/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"sistema-de-preco-chainlink-oracle/","tags":["Intermediário","Avançado","DeFi"],"title":"Como criar um sistema de preços Oracle"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos aprender a como utilizar o Uniswap V3.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAGAAAAwEBAAAAAAAAAAAAAAAAAAEEAgP/xAAUAQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIQAxAAAAGyjqxmg//EABoQAAICAwAAAAAAAAAAAAAAAAISAREEECH/2gAIAQEAAQUCGayDeBG1WG7r/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPwE//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPwE//8QAHBAAAQQDAQAAAAAAAAAAAAAAAQACETEDEFES/9oACAEBAAY/AiDkJc6YHFLZceITa9C1ev/EABsQAQADAAMBAAAAAAAAAAAAAAEAESEQMUHx/9oACAEBAAE/IbKQo9CJaC8ZcSQ1TSOQB5dQPjx//9oADAMBAAIAAwAAABCgz//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQMBAT8QP//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQIBAT8QP//EAB0QAQEAAgIDAQAAAAAAAAAAAAERACFhgTFBcdH/2gAIAQEAAT8QGr4GnNCen85w/gUmuzjEGCko9awyBlTqffOUx04BgQi3nP/Z","aspectRatio":1.5151515151515151,"src":"/static/ae02221f62f999ee1c60845b6e97fdd8/0cb3d/capa.jpg","srcSet":"/static/ae02221f62f999ee1c60845b6e97fdd8/f836f/capa.jpg 200w,\n/static/ae02221f62f999ee1c60845b6e97fdd8/2244e/capa.jpg 400w,\n/static/ae02221f62f999ee1c60845b6e97fdd8/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"exemplos-de-uso-do-uniswap-v3/","tags":["Intermediário","Avançado","DeFi"],"title":"Exemplos de uso do Uniswap V3"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos aprender a como adicionar liquidez em uma pool e realizar swap de tokens utilizando o Uniswap V2.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAGAAAAwEBAAAAAAAAAAAAAAAAAAEEAgP/xAAUAQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIQAxAAAAGyjqxmg//EABoQAAICAwAAAAAAAAAAAAAAAAISAREEECH/2gAIAQEAAQUCGayDeBG1WG7r/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPwE//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPwE//8QAHBAAAQQDAQAAAAAAAAAAAAAAAQACETEDEFES/9oACAEBAAY/AiDkJc6YHFLZceITa9C1ev/EABsQAQADAAMBAAAAAAAAAAAAAAEAESEQMUHx/9oACAEBAAE/IbKQo9CJaC8ZcSQ1TSOQB5dQPjx//9oADAMBAAIAAwAAABCgz//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQMBAT8QP//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQIBAT8QP//EAB0QAQEAAgIDAQAAAAAAAAAAAAERACFhgTFBcdH/2gAIAQEAAT8QGr4GnNCen85w/gUmuzjEGCko9awyBlTqffOUx04BgQi3nP/Z","aspectRatio":1.5151515151515151,"src":"/static/96bdd707aeb59beb002c97a01ab4ec42/0cb3d/capa.jpg","srcSet":"/static/96bdd707aeb59beb002c97a01ab4ec42/f836f/capa.jpg 200w,\n/static/96bdd707aeb59beb002c97a01ab4ec42/2244e/capa.jpg 400w,\n/static/96bdd707aeb59beb002c97a01ab4ec42/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"fornecimento-unilateral-com-uniswap-v2/","tags":["Intermediário","Avançado","DeFi"],"title":"Fornecimento unilateral ideal com Uniswap V2"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos aprender a como adicionar e remover liquidez de uma pool utilizando o Uniswap V2.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAGAAAAwEBAAAAAAAAAAAAAAAAAAEEAgP/xAAUAQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIQAxAAAAGyjqxmg//EABoQAAICAwAAAAAAAAAAAAAAAAISAREEECH/2gAIAQEAAQUCGayDeBG1WG7r/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPwE//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPwE//8QAHRAAAgICAwEAAAAAAAAAAAAAAREAAjFRAxASQf/aAAgBAQAGPwIg8hNrNDUdXY6geZ6+zPX/xAAaEAEBAQADAQAAAAAAAAAAAAABEQAhMUHR/9oACAEBAAE/IaUhD0MloLxxckhkcmlAL9hgr4wT27//2gAMAwEAAgADAAAAELAP/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPxA//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPxA//8QAHBABAQACAwEBAAAAAAAAAAAAAREAIVFhgUHR/9oACAEBAAE/EBq+BpzQnx/O8P4FJr04xBgpKPmsWDdDvJxZctDq8AmIIrszP//Z","aspectRatio":1.5151515151515151,"src":"/static/53907e82e3e225ec528ceadbb049bc69/0cb3d/capa.jpg","srcSet":"/static/53907e82e3e225ec528ceadbb049bc69/f836f/capa.jpg 200w,\n/static/53907e82e3e225ec528ceadbb049bc69/2244e/capa.jpg 400w,\n/static/53907e82e3e225ec528ceadbb049bc69/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"adicionar-e-remover-liquidez-com-uniswap-v2/","tags":["Intermediário","Avançado","DeFi"],"title":"Como adicionar e remover liquidez com Uniswap V2"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos aprender a como realizar uma troca de tokens utilizando o Uniswap V2.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAFwAAAwEAAAAAAAAAAAAAAAAAAAIEA//EABQBAQAAAAAAAAAAAAAAAAAAAAD/2gAMAwEAAhADEAAAAbKN2FGD/8QAGRAAAwEBAQAAAAAAAAAAAAAAAQISEQQQ/9oACAEBAAEFAlOdD2qrsyKw+f/EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQMBAT8BP//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQIBAT8BP//EABwQAAICAgMAAAAAAAAAAAAAAAERAAIxUQMQEv/aAAgBAQAGPwIg8hNrNDUYdjqB5npBzPX/xAAbEAACAgMBAAAAAAAAAAAAAAABEQAhEDFB8P/aAAgBAQABPyFlII6CESkcU4REFJYmoB2Vc8Bj/9oADAMBAAIAAwAAABDAz//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQMBAT8QP//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQIBAT8QP//EAB8QAQACAQMFAAAAAAAAAAAAAAEAESEQQWFxgZHR8P/aAAgBAQABPxAbXwNnMCbPrmNOJZWvIjEGClWPbEz1IqnY6z4jT//Z","aspectRatio":1.5151515151515151,"src":"/static/8776fadf9d5210d455dc52cf26da2957/0cb3d/capa.jpg","srcSet":"/static/8776fadf9d5210d455dc52cf26da2957/f836f/capa.jpg 200w,\n/static/8776fadf9d5210d455dc52cf26da2957/2244e/capa.jpg 400w,\n/static/8776fadf9d5210d455dc52cf26da2957/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"swap-com-uniswap-v2/","tags":["Intermediário","DeFi"],"title":"Como realizar Swap com Uniswap V2"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos aprender a como realizar testes em um contrato inteligente com Echidna.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAGAAAAwEBAAAAAAAAAAAAAAAAAAEEAgP/xAAUAQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIQAxAAAAGyjqxmg//EABoQAAICAwAAAAAAAAAAAAAAAAISAREEECH/2gAIAQEAAQUCGayDcRG1WG7r/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPwE//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPwE//8QAHBAAAQUAAwAAAAAAAAAAAAAAAQACETFRAxAS/9oACAEBAAY/AiDyEudMDESJccQm16F6r6//xAAcEAACAgIDAAAAAAAAAAAAAAABEQAhEEExUcH/2gAIAQEAAT8hYyCPAQkStKcIiCksQuAAPpc184//2gAMAwEAAgADAAAAEPDP/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPxA//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPxA//8QAHRABAAICAgMAAAAAAAAAAAAAAQARIUFhgTFx0f/aAAgBAQABPxAbnwNnMCafnMaMGytdkjEGClWPWIYJ1NOHvzKto3hmBRS3yz//2Q==","aspectRatio":1.5151515151515151,"src":"/static/e9bbad49535537049de7b1971c5eda22/0cb3d/capa.jpg","srcSet":"/static/e9bbad49535537049de7b1971c5eda22/f836f/capa.jpg 200w,\n/static/e9bbad49535537049de7b1971c5eda22/2244e/capa.jpg 400w,\n/static/e9bbad49535537049de7b1971c5eda22/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"testes-com-echidna/","tags":["Intermediário"],"title":"Como realizar testes com Echidna"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos aprender a como um contrato malicioso consegue ignorar a verificação do tamanho de um contrato inteligente.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAGAAAAwEBAAAAAAAAAAAAAAAAAAIEAQP/xAAUAQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIQAxAAAAGyjoxowf/EABsQAAEEAwAAAAAAAAAAAAAAAAIBBBESECEi/9oACAEBAAEFAhWHB3QRmtet4//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQMBAT8BP//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQIBAT8BP//EAB0QAAICAgMBAAAAAAAAAAAAAAERAAIxUQMQEnH/2gAIAQEABj8CIPITazQ1GHY6geZ6CfyZ6//EABoQAAMBAQEBAAAAAAAAAAAAAAABESExQfD/2gAIAQEAAT8hoSEPEGbiPGUZmLI1DW4Gy9H3Bc0//9oADAMBAAIAAwAAABCwD//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQMBAT8QP//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQIBAT8QP//EAB4QAQEAAgEFAQAAAAAAAAAAAAERACFhMUFxgZHR/9oACAEBAAE/EBu+BpzQnZ/Ocf8AEpNfRjEGCko+tYUAaiFHnIo6cRlzVZtnXP/Z","aspectRatio":1.5151515151515151,"src":"/static/27cd461d61784e0dbcbedfd70eee73ac/0cb3d/capa.jpg","srcSet":"/static/27cd461d61784e0dbcbedfd70eee73ac/f836f/capa.jpg 200w,\n/static/27cd461d61784e0dbcbedfd70eee73ac/2244e/capa.jpg 400w,\n/static/27cd461d61784e0dbcbedfd70eee73ac/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"ignorar-verificacao-do-tamanho-do-contrato/","tags":["Intermediário","Hacks"],"title":"Como ignorar a verificação do tamanho do contrato"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos aprender a como um contrato malicioso consegue utilizar da técnica de repetição de assinatura para burlar um contrato inteligente.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAGAAAAwEBAAAAAAAAAAAAAAAAAAIEAQP/xAAUAQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIQAxAAAAGyjoxowf/EABsQAAEEAwAAAAAAAAAAAAAAAAIBBBESECEi/9oACAEBAAEFAhWHB3QRmte94//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQMBAT8BP//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQIBAT8BP//EAB4QAAICAQUBAAAAAAAAAAAAAAERAAIxAxASUWFx/9oACAEBAAY/AiDqE2s0OoSHbyB5nIJ/Jnb/xAAaEAEAAwEBAQAAAAAAAAAAAAABABExIUHw/9oACAEBAAE/IbKQo4Ir7Dxy4khqnSIEARup9VDOz//aAAwDAQACAAMAAAAQ8A//xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAEDAQE/ED//xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAECAQE/ED//xAAdEAEBAAEEAwAAAAAAAAAAAAABEQAhMUGBYZHR/9oACAEBAAE/EBq+BpzQTh+ecZkek17YxBgpKPWmTAMZV3viUZXNV5Zn/9k=","aspectRatio":1.5151515151515151,"src":"/static/58c454c3530008b30bd0954a9ce994c1/0cb3d/capa.jpg","srcSet":"/static/58c454c3530008b30bd0954a9ce994c1/f836f/capa.jpg 200w,\n/static/58c454c3530008b30bd0954a9ce994c1/2244e/capa.jpg 400w,\n/static/58c454c3530008b30bd0954a9ce994c1/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"repeticao-de-assinatura/","tags":["Avançado","Hacks"],"title":"Repetição de assinatura"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos aprender a como um contrato malicioso consegue manipular a data e hora do bloco de uma blockchain.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAFwAAAwEAAAAAAAAAAAAAAAAAAAIEA//EABQBAQAAAAAAAAAAAAAAAAAAAAD/2gAMAwEAAhADEAAAAbKNWAYP/8QAGhAAAgIDAAAAAAAAAAAAAAAAAQIREgQQIf/aAAgBAQABBQJTGQ9wqzWonuv/xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAEDAQE/AT//xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAECAQE/AT//xAAcEAABBAMBAAAAAAAAAAAAAAABAAIRMQMQURL/2gAIAQEABj8CIOQlzpgcUiXHiE2vQtXr/8QAGxABAQEAAgMAAAAAAAAAAAAAAREAIUEQMdH/2gAIAQEAAT8hoSEPoZLiOnFySGRyZtAH3NK+fH//2gAMAwEAAgADAAAAEKDP/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPxA//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPxA//8QAHhABAQABAwUAAAAAAAAAAAAAAREAIUFhMXGBkdH/2gAIAQEAAT8QG74GnNBNn5zj/iUmvYxiDBSUfGmGKdElU79cFN0bkYEAW85//9k=","aspectRatio":1.5151515151515151,"src":"/static/56452a8c9a7dbe221f97c569817ea87a/0cb3d/capa.jpg","srcSet":"/static/56452a8c9a7dbe221f97c569817ea87a/f836f/capa.jpg 200w,\n/static/56452a8c9a7dbe221f97c569817ea87a/2244e/capa.jpg 400w,\n/static/56452a8c9a7dbe221f97c569817ea87a/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"manipular-timestamp-do-bloco/","tags":["Intermediário","Hacks"],"title":"Manipulando o timestamp do bloco na blockchain"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos aprender a como um contrato malicioso utiliza a técnica de front running para antecipar uma transação durante outra transação.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAGAAAAwEBAAAAAAAAAAAAAAAAAAEEAgP/xAAUAQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIQAxAAAAGyjqxmg//EABsQAAEEAwAAAAAAAAAAAAAAAAIBBBESECEi/9oACAEBAAEFAhWHB3QRmtet4//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQMBAT8BP//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQIBAT8BP//EAB0QAAEEAgMAAAAAAAAAAAAAAAEAAhExA1EQEnH/2gAIAQEABj8CIOQlzpgaUiXHSE2uwvxXx//EABsQAQACAwEBAAAAAAAAAAAAAAEAESExQaHw/9oACAEBAAE/IbCQo6ES6Rxi4khqmSJMQXdo/ZPZ/9oADAMBAAIAAwAAABCAD//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQMBAT8QP//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQIBAT8QP//EAB8QAQEAAQIHAAAAAAAAAAAAAAERACGBMUFRYXGR0f/aAAgBAQABPxAbvgac0E5Pzvj/AIlJr2MYgwUlHbTHpHRlR544AibIwEItdc//2Q==","aspectRatio":1.5151515151515151,"src":"/static/7cb2ab2781a12795a917634d9c36fc8c/0cb3d/capa.jpg","srcSet":"/static/7cb2ab2781a12795a917634d9c36fc8c/f836f/capa.jpg 200w,\n/static/7cb2ab2781a12795a917634d9c36fc8c/2244e/capa.jpg 400w,\n/static/7cb2ab2781a12795a917634d9c36fc8c/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"ataque-front-running/","tags":["Intermediário","Hacks"],"title":"Ataque utilizando a técnica front running"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos aprender a como desenvolver um contrato inteligente para atrair e pegar hackers e contratos maliciosos através da técnica honeypot (pote de mel).","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAGAAAAwEBAAAAAAAAAAAAAAAAAAEEAgP/xAAUAQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIQAxAAAAGyjqxmg//EABsQAAEEAwAAAAAAAAAAAAAAAAIBBBESECEi/9oACAEBAAEFAhWHB3QRmtet4//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQMBAT8BP//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQIBAT8BP//EAB0QAAEEAgMAAAAAAAAAAAAAAAEAAhExA1EQEnH/2gAIAQEABj8CIOQlzpgaUiXHSE2uwvxXx//EABsQAQACAwEBAAAAAAAAAAAAAAEAESExQaHw/9oACAEBAAE/IbCQo6ES6Rxi4khqmSJMQXdo/ZPZ/9oADAMBAAIAAwAAABCAD//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQMBAT8QP//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQIBAT8QP//EAB8QAQEAAQIHAAAAAAAAAAAAAAERACGBMUFRYXGR0f/aAAgBAQABPxAbvgac0E5Pzvj/AIlJr2MYgwUlHbTHpHRlR544AibIwEItdc//2Q==","aspectRatio":1.5151515151515151,"src":"/static/7cb2ab2781a12795a917634d9c36fc8c/0cb3d/capa.jpg","srcSet":"/static/7cb2ab2781a12795a917634d9c36fc8c/f836f/capa.jpg 200w,\n/static/7cb2ab2781a12795a917634d9c36fc8c/2244e/capa.jpg 400w,\n/static/7cb2ab2781a12795a917634d9c36fc8c/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"honeypot/","tags":["Intermediário","Hacks"],"title":"Criar uma armadilha para hackers com a técnica honeypot"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos aprender a como um contrato malicioso consegue ocultar seu script malicioso e como previnir um ataque em seu contrato inteligente.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAGAAAAwEBAAAAAAAAAAAAAAAAAAEEAgP/xAAUAQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIQAxAAAAGyjqxmg//EABsQAAEEAwAAAAAAAAAAAAAAAAIBBBESECEi/9oACAEBAAEFAhWHB3QRmtet4//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQMBAT8BP//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQIBAT8BP//EAB0QAAICAgMBAAAAAAAAAAAAAAERAAIxUQMQEnH/2gAIAQEABj8CIPITazQ1GHY6geZ6CfyZ6//EABsQAAMAAwEBAAAAAAAAAAAAAAABESExQWHw/9oACAEBAAE/IaEhDpBm4jjFGZiyMoaqBH7sfcFj0//aAAwDAQACAAMAAAAQgA//xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAEDAQE/ED//xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAECAQE/ED//xAAfEAEBAAEDBQEAAAAAAAAAAAABEQAhUWExQXGBkdH/2gAIAQEAAT8QG74GnNBOz+c4/wCJSa+jGIMFJR9aY1AEZaNr1xI8tmCIryc//9k=","aspectRatio":1.5151515151515151,"src":"/static/7e8a7ddccf40e6b4029c7df7dbfddb32/0cb3d/capa.jpg","srcSet":"/static/7e8a7ddccf40e6b4029c7df7dbfddb32/f836f/capa.jpg 200w,\n/static/7e8a7ddccf40e6b4029c7df7dbfddb32/2244e/capa.jpg 400w,\n/static/7e8a7ddccf40e6b4029c7df7dbfddb32/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"ocultar-script-malicioso/","tags":["Intermediário","Hacks"],"title":"Como um contrato malicioso esconde seu script"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos aprender a como um contrato malicioso realiza phishing com tx.origin e como previnir um ataque em seu contrato inteligente.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAGAAAAwEBAAAAAAAAAAAAAAAAAAEEAgP/xAAUAQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIQAxAAAAGyjqxmg//EABsQAAEEAwAAAAAAAAAAAAAAAAIBBBESECEi/9oACAEBAAEFAhWHB3QRmtet4//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQMBAT8BP//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQIBAT8BP//EAB0QAAICAgMBAAAAAAAAAAAAAAERAAIxUQMQEnH/2gAIAQEABj8CIPITazQ1GHY6geZ6CfyZ6//EABsQAQADAAMBAAAAAAAAAAAAAAEAESExQWHR/9oACAEBAAE/IbCQo8CJdI6ZcSQ1TSJGAffKOfmGez//2gAMAwEAAgADAAAAEIAP/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPxA//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPxA//8QAHhABAQACAQUBAAAAAAAAAAAAAREAIVFBYXGBkdH/2gAIAQEAAT8QG74GnNCdH874/wCJSa+jGIMFJR9awoARlpxcA028MCItcuf/2Q==","aspectRatio":1.5151515151515151,"src":"/static/e3699dab901b1a9fdcc21cc2d5ee41ae/0cb3d/capa.jpg","srcSet":"/static/e3699dab901b1a9fdcc21cc2d5ee41ae/f836f/capa.jpg 200w,\n/static/e3699dab901b1a9fdcc21cc2d5ee41ae/2244e/capa.jpg 400w,\n/static/e3699dab901b1a9fdcc21cc2d5ee41ae/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"phishing-com-txorigin/","tags":["Intermediário","Hacks"],"title":"Phishing com tx.origin"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos aprender a como um contrato malicioso age para tornar um contrato inutilizável e como previnir um ataque em seu contrato inteligente.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAGAAAAwEBAAAAAAAAAAAAAAAAAAEEAgP/xAAUAQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIQAxAAAAGyjpoYw//EABsQAAEEAwAAAAAAAAAAAAAAAAIBBBESECEi/9oACAEBAAEFAhWHB3QRmtet4//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQMBAT8BP//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQIBAT8BP//EABwQAAICAgMAAAAAAAAAAAAAAAERAAIxUQMQEv/aAAgBAQAGPwIg8hNrNDUYdjqB5noJ7Uz1/8QAGxABAAICAwAAAAAAAAAAAAAAAQARITFBcdH/2gAIAQEAAT8hsJCjoRLpHDFxJDVMkSKg+ya+Yay3P//aAAwDAQACAAMAAAAQsM//xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAEDAQE/ED//xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAECAQE/ED//xAAeEAEAAgIBBQAAAAAAAAAAAAABABEhUWFBcYGR0f/aAAgBAQABPxAb3wNnMCdH5zH/ABLK17EYgwUqx8YheAU0YavUrkdkKHI3U//Z","aspectRatio":1.5151515151515151,"src":"/static/202df82b71ba02e956b2804120035a2c/0cb3d/capa.jpg","srcSet":"/static/202df82b71ba02e956b2804120035a2c/f836f/capa.jpg 200w,\n/static/202df82b71ba02e956b2804120035a2c/2244e/capa.jpg 400w,\n/static/202df82b71ba02e956b2804120035a2c/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"negacao-de-servico/","tags":["Intermediário","Hacks"],"title":"Inutilizar um contrato através da negação de serviço"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos aprender a como um contrato malicioso age para descobrir um valor através das fontes de aleatoriedade e como previnir um ataque em seu contrato inteligente.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAGAAAAwEBAAAAAAAAAAAAAAAAAAEEAgP/xAAUAQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIQAxAAAAGyjqxmg//EABoQAAICAwAAAAAAAAAAAAAAAAECERIEECH/2gAIAQEAAQUCUxkPcKs1qJ7r/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPwE//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPwE//8QAHBAAAQUAAwAAAAAAAAAAAAAAAQACETFRAxAS/9oACAEBAAY/AiDyEudMDFIlxxCbXoXqvr//xAAcEAEAAgEFAAAAAAAAAAAAAAABABEhEDFBUdH/2gAIAQEAAT8hsJCjsIl0jhi4khqmSJMAfSGfnT//2gAMAwEAAgADAAAAELDP/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPxA//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPxA//8QAHhABAQABAwUAAAAAAAAAAAAAAREAIUFhMVGBkdH/2gAIAQEAAT8QG74GnNBNn5zj/iUmvYxiDBSUfGmGU6MbO164EB0bwYEIt5c//9k=","aspectRatio":1.5151515151515151,"src":"/static/62c4bbfcbae1b06546188130c127ba07/0cb3d/capa.jpg","srcSet":"/static/62c4bbfcbae1b06546188130c127ba07/f836f/capa.jpg 200w,\n/static/62c4bbfcbae1b06546188130c127ba07/2244e/capa.jpg 400w,\n/static/62c4bbfcbae1b06546188130c127ba07/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"fonte-de-aleatoriedade/","tags":["Intermediário","Hacks"],"title":"Fonte de Aleatoriedade"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos aprender a como um contrato malicioso age para acessar e chamar as funções delegatecall e como previnir um ataque em seu contrato inteligente.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAFwAAAwEAAAAAAAAAAAAAAAAAAAIEA//EABQBAQAAAAAAAAAAAAAAAAAAAAD/2gAMAwEAAhADEAAAAbKNQYYP/8QAGxAAAQQDAAAAAAAAAAAAAAAAAgEEERIQISL/2gAIAQEAAQUCFYcHdBGa163j/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPwE//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPwE//8QAHRAAAgICAwEAAAAAAAAAAAAAAREAAjFRAxAScf/aAAgBAQAGPwIg8hNrNDUYdjqB5noJ/Jnr/8QAGxAAAgIDAQAAAAAAAAAAAAAAAREAIRAxQfD/2gAIAQEAAT8hYSCOghFpHFOERBSWIRqB0dp7WP/aAAwDAQACAAMAAAAQkM//xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAEDAQE/ED//xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAECAQE/ED//xAAeEAEAAgEEAwAAAAAAAAAAAAABABEhMUFhcYGR0f/aAAgBAQABPxAb3wNnMCbPzmP+JZWvYjEGClWPjELYMqko71gW3nWGheWf/9k=","aspectRatio":1.5151515151515151,"src":"/static/4d6204851247e386e17625b5cb176d70/0cb3d/capa.jpg","srcSet":"/static/4d6204851247e386e17625b5cb176d70/f836f/capa.jpg 200w,\n/static/4d6204851247e386e17625b5cb176d70/2244e/capa.jpg 400w,\n/static/4d6204851247e386e17625b5cb176d70/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"chamada-de-funcao-delegatecall/","tags":["Intermediário","Hacks"],"title":"Chamada de função delegatecall"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos aprender a como um contrato malicioso age para acessar variáveis privadas e como previnir um ataque em seu contrato inteligente.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAGAAAAwEBAAAAAAAAAAAAAAAAAAEEAgP/xAAUAQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIQAxAAAAGyjqxmg//EABoQAAICAwAAAAAAAAAAAAAAAAISAREEECH/2gAIAQEAAQUCGayDeBG1WG7r/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPwE//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPwE//8QAHRAAAgICAwEAAAAAAAAAAAAAAREAAjFRAxASQf/aAAgBAQAGPwIg8hNrNDUYdjqB5nr7M9f/xAAbEAEBAQACAwAAAAAAAAAAAAABEQAhQTFh0f/aAAgBAQABPyGhIQ+BkuI6cXJIZHJkkAH3NK+cce9//9oADAMBAAIAAwAAABCwD//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQMBAT8QP//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQIBAT8QP//EAB8QAQACAgAHAAAAAAAAAAAAAAEAESFRMUFhcYGR0f/aAAgBAQABPxAb3wNnMCcn51j/AIlla9iMQYKVY+MTCGhrutXx1CkOHZAilVtn/9k=","aspectRatio":1.5151515151515151,"src":"/static/e12be764d7fd040493045ce2ff058bfb/0cb3d/capa.jpg","srcSet":"/static/e12be764d7fd040493045ce2ff058bfb/f836f/capa.jpg 200w,\n/static/e12be764d7fd040493045ce2ff058bfb/2244e/capa.jpg 400w,\n/static/e12be764d7fd040493045ce2ff058bfb/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"acessando-variaveis-privadas/","tags":["Intermediário","Hacks"],"title":"Acessando variáveis privadas"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos aprender a como um contrato malicioso de auto-destruição funciona e como previnir um ataque em seu contrato inteligente.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAGAAAAwEBAAAAAAAAAAAAAAAAAAIEAQP/xAAUAQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIQAxAAAAGyjsxgwf/EABkQAAMBAQEAAAAAAAAAAAAAAAECEhEEEP/aAAgBAQABBQJTnQ9hV2YFef/EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQMBAT8BP//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQIBAT8BP//EAB0QAAICAgMBAAAAAAAAAAAAAAERAAIxUQMQEkH/2gAIAQEABj8CIPITazQ1GHY6geZ6+zPX/8QAGhAAAwEBAQEAAAAAAAAAAAAAAAERIUExUf/aAAgBAQABPyGhIQ+IM3EcZRmYsjUaESvsVI/oWdp//9oADAMBAAIAAwAAABCQD//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQMBAT8QP//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQIBAT8QP//EAB4QAQEAAQMFAAAAAAAAAAAAAAERACFh0UFRgZHh/9oACAEBAAE/EBu+BpzQTo8b4/4lJr2MYgwUlHxpgJAETpO1lx+UcYERW5z/2Q==","aspectRatio":1.5151515151515151,"src":"/static/caf59a546ce37351201ba2cef671b2e7/0cb3d/capa.jpg","srcSet":"/static/caf59a546ce37351201ba2cef671b2e7/f836f/capa.jpg 200w,\n/static/caf59a546ce37351201ba2cef671b2e7/2244e/capa.jpg 400w,\n/static/caf59a546ce37351201ba2cef671b2e7/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"auto-destruicao/","tags":["Intermediário","Hacks"],"title":"Ataques com Auto-destruição"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos aprender a como um contrato malicioso de estouro de memória funciona e como previnir um ataque em seu contrato inteligente.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAGAAAAgMAAAAAAAAAAAAAAAAAAAQBAgP/xAAUAQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIQAxAAAAFxjaQLB//EABoQAAICAwAAAAAAAAAAAAAAAAISAREEECH/2gAIAQEAAQUCGayDeBG1WG7r/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPwE//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPwE//8QAHRAAAgICAwEAAAAAAAAAAAAAAREAAjFRAxASQf/aAAgBAQAGPwIg8hNrNDUYdjqB5nr7M9f/xAAcEAEBAAICAwAAAAAAAAAAAAABEQAhEDFBUaH/2gAIAQEAAT8hoSEPQxLiPDVxJDI2Y2AD3mBW/nj/2gAMAwEAAgADAAAAEKDP/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPxA//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPxA//8QAHRABAQACAgMBAAAAAAAAAAAAAREAITFhQYGR0f/aAAgBAQABPxAbvgac0J4fzvH/ABKTX0YxBgpKPrWDT4iTU7ZcbsJOAGBCc95//9k=","aspectRatio":1.5151515151515151,"src":"/static/625dd8ba4502cc3959569a82ba3ab456/0cb3d/capa.jpg","srcSet":"/static/625dd8ba4502cc3959569a82ba3ab456/f836f/capa.jpg 200w,\n/static/625dd8ba4502cc3959569a82ba3ab456/2244e/capa.jpg 400w,\n/static/625dd8ba4502cc3959569a82ba3ab456/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"estouro-de-memoria/","tags":["Intermediário","Hacks"],"title":"Ataques com estouro de memória"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos aprender a como um contrato malicioso de reentrada funciona e como previnir um ataque em seu contrato inteligente.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAGAAAAwEBAAAAAAAAAAAAAAAAAAIEAQP/xAAUAQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIQAxAAAAGyjsxgwf/EABkQAAMBAQEAAAAAAAAAAAAAAAECEhEEEP/aAAgBAQABBQJTnQ9hV2ZFef/EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQMBAT8BP//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQIBAT8BP//EAB0QAAICAgMBAAAAAAAAAAAAAAERAAIxUQMQEkH/2gAIAQEABj8CIPITazQ1GHY6geZ6+zPX/8QAGxAAAgIDAQAAAAAAAAAAAAAAAREAIRAxQVH/2gAIAQEAAT8hYSCOghFpHFOERBSWJrAB2VcR9Y//2gAMAwEAAgADAAAAELDP/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPxA//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPxA//8QAHhABAAIBBAMAAAAAAAAAAAAAAQARIUFhgdExcZH/2gAIAQEAAT8QG98DZzAmj1vH/EsrX0RiDBSrHjEzXooTY91cW0uDqVRXnef/2Q==","aspectRatio":1.5151515151515151,"src":"/static/1b748035448b3f0bf54995a07df36894/0cb3d/capa.jpg","srcSet":"/static/1b748035448b3f0bf54995a07df36894/f836f/capa.jpg 200w,\n/static/1b748035448b3f0bf54995a07df36894/2244e/capa.jpg 400w,\n/static/1b748035448b3f0bf54995a07df36894/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"ataque-de-reentrada/","tags":["Intermediário","Hacks"],"title":"Ataque de reentrada, aprenda como funciona e como evitar"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos aprender a como criar um contrato com bloqueio de tempo, para agendar a execução de uma transação no futuro.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAGAAAAwEBAAAAAAAAAAAAAAAAAAEEAgP/xAAUAQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIQAxAAAAGyjpoYw//EABsQAAEEAwAAAAAAAAAAAAAAAAIAARESBCEi/9oACAEBAAEFAheMg7sIzWve0y//xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAEDAQE/AT//xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAECAQE/AT//xAAfEAABAwMFAAAAAAAAAAAAAAABAAIRAxAxEiFRYXH/2gAIAQEABj8CINQlzpgcIkS7pCcrVtPizb//xAAbEAADAAIDAAAAAAAAAAAAAAAAAREhMUFR8P/aAAgBAQABPyGlIQ6Qa9i4YozMWRlEJkjtse4VMun/2gAMAwEAAgADAAAAEMDP/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPxA//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPxA//8QAHxABAAIBAwUAAAAAAAAAAAAAAQARITFBUWFxgZHR/9oACAEBAAE/EBtfA2cwJs/OsoZ+yte0YgwUqx8YiRU4arHF6ygbu4hBzeaqf//Z","aspectRatio":1.5151515151515151,"src":"/static/2629545dd94330f8d21b2a4f32d26224/0cb3d/capa.jpg","srcSet":"/static/2629545dd94330f8d21b2a4f32d26224/f836f/capa.jpg 200w,\n/static/2629545dd94330f8d21b2a4f32d26224/2244e/capa.jpg 400w,\n/static/2629545dd94330f8d21b2a4f32d26224/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"bloqueio-de-tempo-timelock/","tags":["Avançado","Aplicações"],"title":"Criar um contrato com bloqueio de tempo"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos aprender a como criar um contrato inteligente para realizar multichamada de funções.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAGAAAAwEBAAAAAAAAAAAAAAAAAAIEAQP/xAAUAQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIQAxAAAAGyjoxowf/EABsQAAEEAwAAAAAAAAAAAAAAAAIBBBESECEi/9oACAEBAAEFAhWHB3QRmtet4//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQMBAT8BP//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQIBAT8BP//EAB4QAAICAQUBAAAAAAAAAAAAAAERAAIxAxASUWFx/9oACAEBAAY/AiDqE2s0OoSHbyB5nIJ/Jnb/xAAbEAACAwADAAAAAAAAAAAAAAABEQAhMUFR0f/aAAgBAQABPyFlII4EJ9g4U4REFJYhFwB21M+YMuf/2gAMAwEAAgADAAAAEOAP/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPxA//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPxA//8QAHhABAQACAgIDAAAAAAAAAAAAAREAITFxQWGBkdH/2gAIAQEAAT8QGr4GnNCeH895Bn6TX2xiDBSUfjWFYMiRR3k2cuuXNVm2c5//2Q==","aspectRatio":1.5151515151515151,"src":"/static/6bcc01b62a578cfefee7aa0ef4661308/0cb3d/capa.jpg","srcSet":"/static/6bcc01b62a578cfefee7aa0ef4661308/f836f/capa.jpg 200w,\n/static/6bcc01b62a578cfefee7aa0ef4661308/2244e/capa.jpg 400w,\n/static/6bcc01b62a578cfefee7aa0ef4661308/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"contrato-para-multichamadas/","tags":["Avançado","Aplicações"],"title":"Criar contrato para Multichamada de funções"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos aprender a como criar um sistema de financiamento coletivo através de um contrato inteligente.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAGAAAAwEBAAAAAAAAAAAAAAAAAAEEAgP/xAAUAQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIQAxAAAAGyjqxmg//EABsQAAEEAwAAAAAAAAAAAAAAAAIBBBESECEi/9oACAEBAAEFAhWHB3QRmtet4//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQMBAT8BP//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQIBAT8BP//EAB4QAAICAQUBAAAAAAAAAAAAAAERAAIxAxASUWFx/9oACAEBAAY/AiDqE2s0OoSHbyB5nIJ/Jnb/xAAbEAEAAgMBAQAAAAAAAAAAAAABABEhMUFR8f/aAAgBAQABPyGykKOhFfYcYuJIapkiSoF3aJ84a9n/2gAMAwEAAgADAAAAEMAP/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPxA//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPxA//8QAHxABAQACAAcBAAAAAAAAAAAAAREAITFBUWFxgZHR/9oACAEBAAE/EBq+BpzQnJ/O+QZ+k19YxBgpKPrWNSNGVHnjlDI1rTAgFrrn/9k=","aspectRatio":1.5151515151515151,"src":"/static/835d0ba4effaa33da9d87387e25db3f6/0cb3d/capa.jpg","srcSet":"/static/835d0ba4effaa33da9d87387e25db3f6/f836f/capa.jpg 200w,\n/static/835d0ba4effaa33da9d87387e25db3f6/2244e/capa.jpg 400w,\n/static/835d0ba4effaa33da9d87387e25db3f6/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"financiamento-coletivo-crowd-fund/","tags":["Avançado","Aplicações"],"title":"Criar um sistema de financiamento coletivo"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos aprender a como criar um sistema de leilão inglês e holandês através de um contrato inteligente.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAGAAAAwEBAAAAAAAAAAAAAAAAAAEEAgP/xAAUAQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIQAxAAAAGyjqxmg//EABoQAAICAwAAAAAAAAAAAAAAAAECERIEECH/2gAIAQEAAQUCUxkPcKs1Kie6/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPwE//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPwE//8QAHRABAAIBBQEAAAAAAAAAAAAAAQARAgMQEjFRYf/aAAgBAQAGPwJHUXLK6PIpeXyF9zkUPs72/8QAGxABAAMAAwEAAAAAAAAAAAAAAQARIRAxQfH/2gAIAQEAAT8hspCj0Ir7DxlxJDVNJiicabE+fH//2gAMAwEAAgADAAAAEPDP/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPxA//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPxA//8QAHxABAQABAgcAAAAAAAAAAAAAAREAIYEQMUFhcZHR/9oACAEBAAE/EBq+BpzQTo/O+QZ+k17YxBgpKO2mE5WQKjztlBI2cP/Z","aspectRatio":1.5151515151515151,"src":"/static/1c2c751b1a74a4cfb71bcbe18f7802cf/0cb3d/capa.jpg","srcSet":"/static/1c2c751b1a74a4cfb71bcbe18f7802cf/f836f/capa.jpg 200w,\n/static/1c2c751b1a74a4cfb71bcbe18f7802cf/2244e/capa.jpg 400w,\n/static/1c2c751b1a74a4cfb71bcbe18f7802cf/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"sistema-de-leilao-ingles-holandes/","tags":["Avançado","Aplicações"],"title":"Criar um sistema de leilão inglês e holandês"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos aprender a como criar um canal de pagamento bidirecional através de um contrato inteligente.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAGAAAAgMAAAAAAAAAAAAAAAAAAAQBAgP/xAAUAQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIQAxAAAAFxjYJLB//EABoQAAICAwAAAAAAAAAAAAAAAAECERIEECH/2gAIAQEAAQUCUxkPcKs1qJ7r/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPwE//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPwE//8QAHhAAAQMEAwAAAAAAAAAAAAAAAQACEQMQMVESIWH/2gAIAQEABj8CINQlzpgaRIl3iE5XIDvazb//xAAcEAACAgIDAAAAAAAAAAAAAAABEQAhEDFBYaH/2gAIAQEAAT8hZSCOghPsHCnCIgpLENUDqgD35x//2gAMAwEAAgADAAAAENDP/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPxA//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPxA//8QAHxABAQABAgcAAAAAAAAAAAAAAREAITEQQVFhgZHR/9oACAEBAAE/EBq+BpzQTk/O+QZ+k17YxBgpKPjTCpnIg1Oi74gVk2Bw/9k=","aspectRatio":1.5151515151515151,"src":"/static/13d83b36c8a94464f3d569ac4233b5dd/0cb3d/capa.jpg","srcSet":"/static/13d83b36c8a94464f3d569ac4233b5dd/f836f/capa.jpg 200w,\n/static/13d83b36c8a94464f3d569ac4233b5dd/2244e/capa.jpg 400w,\n/static/13d83b36c8a94464f3d569ac4233b5dd/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"canal-de-pagamento-bidirecional/","tags":["Avançado","Aplicações"],"title":"Criar um Canal de pagamento bidirecional"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos aprender a como criar um canal de pagamento unidirecional através de um contrato inteligente.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAGAAAAgMAAAAAAAAAAAAAAAAAAAQBAgP/xAAUAQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIQAxAAAAFxjYJLB//EABoQAAICAwAAAAAAAAAAAAAAAAECERIEECH/2gAIAQEAAQUCUxkPcKs1qJ7r/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPwE//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPwE//8QAHRABAAIBBQEAAAAAAAAAAAAAAQARAgMQEjFRYf/aAAgBAQAGPwJHUXLK6PIpeXyF9zkBfs72/8QAHBAAAgICAwAAAAAAAAAAAAAAAREAIRAxQWHR/9oACAEBAAE/IWUgjoIT7BwpwiIKSxDVDquAP5x//9oADAMBAAIAAwAAABDQz//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQMBAT8QP//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQIBAT8QP//EAB8QAQACAQMFAAAAAAAAAAAAAAEAESEQMVFBYYGR0f/aAAgBAQABPxAbXwNnMCdH53lDP2Vr2jEGClWPjEK2PCDY4XeIF48A0//Z","aspectRatio":1.5151515151515151,"src":"/static/d17d563657f561ed94dfdcfa06706daf/0cb3d/capa.jpg","srcSet":"/static/d17d563657f561ed94dfdcfa06706daf/f836f/capa.jpg 200w,\n/static/d17d563657f561ed94dfdcfa06706daf/2244e/capa.jpg 400w,\n/static/d17d563657f561ed94dfdcfa06706daf/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"canal-de-pagamento-unidirecional/","tags":["Avançado","Aplicações"],"title":"Criar um Canal de pagamento unidirecional"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos aprender a como gravar dados em qualquer slot do storage da blockchain através de um contrato inteligente.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAGAAAAwEBAAAAAAAAAAAAAAAAAAEEAgP/xAAUAQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIQAxAAAAGyjqxmg//EABoQAAICAwAAAAAAAAAAAAAAAAISAREEECH/2gAIAQEAAQUCGayDeBG1WG7r/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPwE//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPwE//8QAHBABAAICAwEAAAAAAAAAAAAAAQARAjEDEFES/9oACAEBAAY/AkeRcsro8il5PkL3Po3N9f/EABsQAAIDAAMAAAAAAAAAAAAAAAERACFBEDHB/9oACAEBAAE/IWUgj0EJMjFOERBSWIagAeq5nzx//9oADAMBAAIAAwAAABCgz//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQMBAT8QP//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQIBAT8QP//EAB4QAQEAAgEFAQAAAAAAAAAAAAERACGBMUFRYXHR/9oACAEBAAE/EBq+BpzQnZ/PeRz2hi5OMQYKSjxrBLUhnp965KHLTAhFr5c//9k=","aspectRatio":1.5151515151515151,"src":"/static/5f10709f3ec46900b840e6fafb26027d/0cb3d/capa.jpg","srcSet":"/static/5f10709f3ec46900b840e6fafb26027d/f836f/capa.jpg 200w,\n/static/5f10709f3ec46900b840e6fafb26027d/2244e/capa.jpg 400w,\n/static/5f10709f3ec46900b840e6fafb26027d/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"gravar-dados-no-slot/","tags":["Intermediário","Aplicações"],"title":"Como gravar dados em qualquer slot"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos aprender a como implantar qualquer contrato na blockchain utilizando o método Proxy.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAGAAAAgMAAAAAAAAAAAAAAAAAAAQBAgP/xAAUAQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIQAxAAAAFxjaQLB//EABoQAAICAwAAAAAAAAAAAAAAAAISAREEECH/2gAIAQEAAQUCGayDeBG1WG7r/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPwE//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPwE//8QAHRAAAQMFAQAAAAAAAAAAAAAAAQACEQMQEjFRQf/aAAgBAQAGPwIg1CXOmBxEiXHiE7WXq3b/xAAbEAEBAAIDAQAAAAAAAAAAAAABEQAhEDFBof/aAAgBAQABPyGlIQ9DFGR41cSQyNmNgAnuYHr44//aAAwDAQACAAMAAAAQwM//xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAEDAQE/ED//xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAECAQE/ED//xAAeEAEBAAEEAwEAAAAAAAAAAAABEQAhMUGBUWGR0f/aAAgBAQABPxAavgac0E4fz3kO9pNfWMQYKSj1pg0+hJr3LiGLtwDNjzn/2Q==","aspectRatio":1.5151515151515151,"src":"/static/77ed878db8666746be131b2e28c8508a/0cb3d/capa.jpg","srcSet":"/static/77ed878db8666746be131b2e28c8508a/f836f/capa.jpg 200w,\n/static/77ed878db8666746be131b2e28c8508a/2244e/capa.jpg 400w,\n/static/77ed878db8666746be131b2e28c8508a/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"implantar-contrato-com-proxy/","tags":["Avançado","Aplicações"],"title":"Como implantar qualquer contrato com Proxy"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos aprender o que é um Proxy e para que ele server na Blockchain, como implantá-lo e suas aplicações.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAGAAAAgMAAAAAAAAAAAAAAAAAAAQBAgP/xAAUAQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIQAxAAAAFxjYJLB//EABoQAAICAwAAAAAAAAAAAAAAAAECERIEECH/2gAIAQEAAQUCUxkPcKs1Kie6/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPwE//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPwE//8QAHBABAAICAwEAAAAAAAAAAAAAAQARAlEDEDES/9oACAEBAAY/AkeRcsro1FLydQv2fQF7nvX/xAAbEAACAwADAAAAAAAAAAAAAAABEQAhMRBB0f/aAAgBAQABPyFlII4EJMjpThEQUliUIHqXNeOP/9oADAMBAAIAAwAAABDQz//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQMBAT8QP//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQIBAT8QP//EAB8QAQEAAgAHAQAAAAAAAAAAAAERACEQMUFRYYGR0f/aAAgBAQABPxAavgac0J0fzzkO9pNfWMQYKSj61g3oMBo7XAOxS8uD/9k=","aspectRatio":1.5151515151515151,"src":"/static/0652b3c036a43265007cd870742a3fc1/0cb3d/capa.jpg","srcSet":"/static/0652b3c036a43265007cd870742a3fc1/f836f/capa.jpg 200w,\n/static/0652b3c036a43265007cd870742a3fc1/2244e/capa.jpg 400w,\n/static/0652b3c036a43265007cd870742a3fc1/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"trabalhando-com-proxy/","tags":["Avançado","Aplicações"],"title":"Trabalhando com Proxy"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos aprender a como pré-computar um endereço de contrato antes de ser implantado na blockchain.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAFwAAAwEAAAAAAAAAAAAAAAAAAAIEA//EABQBAQAAAAAAAAAAAAAAAAAAAAD/2gAMAwEAAhADEAAAAbKNWAYP/8QAGhAAAgIDAAAAAAAAAAAAAAAAAQIREgQQIf/aAAgBAQABBQJTGQ9wqzWonuv/xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAEDAQE/AT//xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAECAQE/AT//xAAcEAABBQADAAAAAAAAAAAAAAABAAIRMVEDEBL/2gAIAQEABj8CIPIS50wMRIlxxCbXoXqvr//EABwQAAMAAQUAAAAAAAAAAAAAAAABESExQVFh8f/aAAgBAQABPyGlIQ6INGRsxRmYsjKHbBPwQl4ix2f/2gAMAwEAAgADAAAAEOAP/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPxA//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPxA//8QAHRABAQACAQUAAAAAAAAAAAAAAREAIWFBUYGR0f/aAAgBAQABPxAavgac0J0fnOQ72k17YxBgpKPjWCK0ztJ2suJYqcC4ERXk5//Z","aspectRatio":1.5151515151515151,"src":"/static/a3140a38771c70be98d2d4de618d28c6/0cb3d/capa.jpg","srcSet":"/static/a3140a38771c70be98d2d4de618d28c6/f836f/capa.jpg 200w,\n/static/a3140a38771c70be98d2d4de618d28c6/2244e/capa.jpg 400w,\n/static/a3140a38771c70be98d2d4de618d28c6/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"precomputar-endereco-contrato/","tags":["Avançado","Aplicações"],"title":"Pré-computar endereço do Contrato com Create2"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos aprender a como criar nosso primeiro Token ERC721 e uma aplicação que irá interagir com nosso token.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAGAAAAgMAAAAAAAAAAAAAAAAAAAQBAgP/xAAUAQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIQAxAAAAFxjYJLB//EABoQAAICAwAAAAAAAAAAAAAAAAECERIEECH/2gAIAQEAAQUCUxkOXCrNaie6/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPwE//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPwE//8QAHBAAAQUAAwAAAAAAAAAAAAAAAQACETFRAxAS/9oACAEBAAY/AiDyEudMDES2XHEJteheq+v/xAAcEAADAAEFAAAAAAAAAAAAAAAAAREhEDFBYdH/2gAIAQEAAT8hpSEOyEGBwxRmYsjKHahLqEq86f/aAAwDAQACAAMAAAAQkM//xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAEDAQE/ED//xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAECAQE/ED//xAAdEAEBAAIBBQAAAAAAAAAAAAABEQBhIRBBgZHR/9oACAEBAAE/EBq+BpzgTs/N4mQtJr2xiDBSUfHGXh5EFU25GsGidP/Z","aspectRatio":1.5151515151515151,"src":"/static/7c0611785aba711814983f21b70c002f/0cb3d/capa.jpg","srcSet":"/static/7c0611785aba711814983f21b70c002f/f836f/capa.jpg 200w,\n/static/7c0611785aba711814983f21b70c002f/2244e/capa.jpg 400w,\n/static/7c0611785aba711814983f21b70c002f/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"token-erc721/","tags":["Intermediário","Avançado","Aplicações"],"title":"Criando nosso primeiro Token ERC721"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos aprender a como criar nosso primeiro Token ERC20 e uma aplicação que irá interagir com nosso token.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAGAAAAgMAAAAAAAAAAAAAAAAAAAQBAgP/xAAUAQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIQAxAAAAFxjYJLB//EABoQAAICAwAAAAAAAAAAAAAAAAECERIEECH/2gAIAQEAAQUCUxkOXCrNaie6/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPwE//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPwE//8QAHBAAAQUAAwAAAAAAAAAAAAAAAQACETFRAxAS/9oACAEBAAY/AiDyEudMDES2XHEJteheq+v/xAAcEAADAAEFAAAAAAAAAAAAAAAAAREhEDFBYdH/2gAIAQEAAT8hpSEOyEGBwxRmYsjKHahLqEq86f/aAAwDAQACAAMAAAAQkM//xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAEDAQE/ED//xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAECAQE/ED//xAAdEAEBAAEEAwAAAAAAAAAAAAABEQAQIUFhgZHR/9oACAEBAAE/EBq+BpzYTh+d4mQtJr2xiDBSUfG2Xx5EFU7cWLBOCaf/2Q==","aspectRatio":1.5151515151515151,"src":"/static/93c845a8821b032557d4fef97962169e/0cb3d/capa.jpg","srcSet":"/static/93c845a8821b032557d4fef97962169e/f836f/capa.jpg 200w,\n/static/93c845a8821b032557d4fef97962169e/2244e/capa.jpg 400w,\n/static/93c845a8821b032557d4fef97962169e/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"token-erc20/","tags":["Intermediário","Avançado","Aplicações"],"title":"Criando nosso primeiro Token ERC20"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos aprender a criar uma aplicação utilizando o mapeamento iterável através da criação de um contrato inteligente.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAGAAAAwEBAAAAAAAAAAAAAAAAAAEEAgP/xAAUAQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIQAxAAAAGyjqxmg//EABoQAAICAwAAAAAAAAAAAAAAAAECERIEECH/2gAIAQEAAQUCUxkPcKs1Ki3df//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQMBAT8BP//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQIBAT8BP//EABwQAAICAgMAAAAAAAAAAAAAAAERAAIxUQMQEv/aAAgBAQAGPwIg8hNrNDUJq7HUDzPQT2pnr//EABsQAQADAQADAAAAAAAAAAAAAAEAESExEEHx/9oACAEBAAE/IbKQocESwL0y4khqmkxAPHpK+Pj/2gAMAwEAAgADAAAAEIDP/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPxA//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPxA//8QAHhABAQACAQUBAAAAAAAAAAAAAREAITFBYXGBkdH/2gAIAQEAAT8QGr4OnNCdH874aQaTX0YxBgpKPrWEhpoFHnBZwssOcZ//2Q==","aspectRatio":1.5151515151515151,"src":"/static/59fdc8390868b3cd1369150925cb60ab/0cb3d/capa.jpg","srcSet":"/static/59fdc8390868b3cd1369150925cb60ab/f836f/capa.jpg 200w,\n/static/59fdc8390868b3cd1369150925cb60ab/2244e/capa.jpg 400w,\n/static/59fdc8390868b3cd1369150925cb60ab/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"aplicacao-mapeamento-iteravel/","tags":["Intermediário","Aplicações"],"title":"Mapeamento Iterável"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos aprender a criar uma aplicação utilizando a estrutura da árvore de merkle através da criação de um contrato inteligente.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAGAAAAwEBAAAAAAAAAAAAAAAAAAIEAQP/xAAUAQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIQAxAAAAGyjoxowf/EABsQAAICAwEAAAAAAAAAAAAAAAECERIEECEi/9oACAEBAAEFAlMZDlwqzWvruv/EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQMBAT8BP//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQIBAT8BP//EAB4QAAEDBAMAAAAAAAAAAAAAAAEAAhEDEDFREiFx/9oACAEBAAY/AiDUJc6YGkS2XHSE5XLqfFm3/8QAGhAAAwEBAQEAAAAAAAAAAAAAAAERITFB8f/aAAgBAQABPyGlIQ8QgwPGUZmLI1DW0SNl6J8Rc0//2gAMAwEAAgADAAAAEKAP/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPxA//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPxA//8QAHxABAAICAAcAAAAAAAAAAAAAAQARIVExQWFxgZHR/9oACAEBAAE/EBtfA2cwJyfnWJkLZWvaMQYKVY+MShJrEWO80gxrL8QXYVP/2Q==","aspectRatio":1.5151515151515151,"src":"/static/cf9fe09896ca68d9e7e00edfe0cd8669/0cb3d/capa.jpg","srcSet":"/static/cf9fe09896ca68d9e7e00edfe0cd8669/f836f/capa.jpg 200w,\n/static/cf9fe09896ca68d9e7e00edfe0cd8669/2244e/capa.jpg 400w,\n/static/cf9fe09896ca68d9e7e00edfe0cd8669/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"aplicacao-arvore-merkle/","tags":["Avançado","Aplicações"],"title":"Árvore de Merkle"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos aprender a criar uma carteira que aceita múltiplas assinaturas no envio da transação através da criação de um contrato inteligente.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAGAAAAwEBAAAAAAAAAAAAAAAAAAEEAgP/xAAUAQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIQAxAAAAGyjqxmg//EABoQAAICAwAAAAAAAAAAAAAAAAECERIEECH/2gAIAQEAAQUCUxkOXCrNSot3X//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQMBAT8BP//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQIBAT8BP//EABwQAAICAgMAAAAAAAAAAAAAAAERAAIxUQMQEv/aAAgBAQAGPwIg8hNrNDUJq7HUDzPQT2pnr//EABsQAAIDAAMAAAAAAAAAAAAAAAERACExEEHx/9oACAEBAAE/IWUgjgRDA6U4REFJYlIAYvSLw4//2gAMAwEAAgADAAAAEIDP/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPxA//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPxA//8QAHhABAAICAQUAAAAAAAAAAAAAAQARIUGBMWFxkdH/2gAIAQEAAT8QG18DZzAmn53iZC2Vr2jEGClWPGIB0EAFHmOknGHQvLU//9k=","aspectRatio":1.5151515151515151,"src":"/static/194819c025504b44e7518ce7250b947d/0cb3d/capa.jpg","srcSet":"/static/194819c025504b44e7518ce7250b947d/f836f/capa.jpg 200w,\n/static/194819c025504b44e7518ce7250b947d/2244e/capa.jpg 400w,\n/static/194819c025504b44e7518ce7250b947d/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"aplicacao-multi-assinatura/","tags":["Intermediário","Avançado","Aplicações"],"title":"Carteira com Multi-Assinaturas"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos aprender a criar uma carteira de tokens através da criação de um contrato inteligente.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAGAAAAgMAAAAAAAAAAAAAAAAAAAQBAgP/xAAUAQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIQAxAAAAFxjaQLB//EABoQAAICAwAAAAAAAAAAAAAAAAISAREEECH/2gAIAQEAAQUCGayDeBG1WG7r/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPwE//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPwE//8QAHRAAAQQCAwAAAAAAAAAAAAAAAQACEVEDMRASQf/aAAgBAQAGPwIg5CXOmBSJEuNITtdvbW+P/8QAHBABAAICAwEAAAAAAAAAAAAAAQARITEQQWGh/9oACAEBAAE/IbKQo6EVMjpi4khqmSawDyzAW/jj/9oADAMBAAIAAwAAABDgz//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQMBAT8QP//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQIBAT8QP//EAB4QAQEAAQMFAAAAAAAAAAAAAAERABAhgUFhcZHR/9oACAEBAAE/EBq+BpzYTo/O+Qz2k17YxBgpKPG2Ni0RBo8zLVeAaf/Z","aspectRatio":1.5151515151515151,"src":"/static/7bccfe9c90abf1dc4f271756ff1c4939/0cb3d/capa.jpg","srcSet":"/static/7bccfe9c90abf1dc4f271756ff1c4939/f836f/capa.jpg 200w,\n/static/7bccfe9c90abf1dc4f271756ff1c4939/2244e/capa.jpg 400w,\n/static/7bccfe9c90abf1dc4f271756ff1c4939/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"aplicacao-wallet/","tags":["Iniciante","Aplicações"],"title":"Carteira de Tokens"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos abordar sobre como verificar uma assinatura hashing através da função keccak256.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAFwAAAwEAAAAAAAAAAAAAAAAAAAIEA//EABQBAQAAAAAAAAAAAAAAAAAAAAD/2gAMAwEAAhADEAAAAbKNAcYP/8QAGRAAAwEBAQAAAAAAAAAAAAAAAQIREgQQ/9oACAEBAAEFAlM6H2FW5KxqfP/EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQMBAT8BP//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQIBAT8BP//EAB0QAQABAwUAAAAAAAAAAAAAAAERAAJRAxASMXH/2gAIAQEABj8CR1FuumDFKTc4onuuRE+b/wD/xAAcEAACAgIDAAAAAAAAAAAAAAABEQAhMUEQYZH/2gAIAQEAAT8hYSCOAhJkaU4REFJYgkAHvKdo84//2gAMAwEAAgADAAAAEKDP/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPxA//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPxA//8QAHxABAQABAgcAAAAAAAAAAAAAAREAIVExQWFxgZHR/9oACAEBAAE/EBu+BpzQTk/OuPmbSa9sYgwUlHxpkL5jJR3x42ltgEItd5n/2Q==","aspectRatio":1.5151515151515151,"src":"/static/f5b7dabf1528a0cc98ff58f3af53bd6c/0cb3d/capa.jpg","srcSet":"/static/f5b7dabf1528a0cc98ff58f3af53bd6c/f836f/capa.jpg 200w,\n/static/f5b7dabf1528a0cc98ff58f3af53bd6c/2244e/capa.jpg 400w,\n/static/f5b7dabf1528a0cc98ff58f3af53bd6c/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"assinaturas-e-hashing-keccak/","tags":["Intermediário","Avançado"],"title":"Verificando assinatura hashing com Keccak256"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos abordar sobre o que é uma ABI do contrato inteligente, para que serve e como codificar e decodificar.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAFgABAQEAAAAAAAAAAAAAAAAAAgAE/8QAFAEBAAAAAAAAAAAAAAAAAAAAAP/aAAwDAQACEAMQAAAB2aGhSj//xAAbEAACAgMBAAAAAAAAAAAAAAABAhESBBAhIv/aAAgBAQABBQJTGQ91VZqR67r/xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAEDAQE/AT//xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAECAQE/AT//xAAbEAEAAgMBAQAAAAAAAAAAAAABABECMVEDEP/aAAgBAQAGPwJH0XLK6ORS8nkL3LAvtTfz/8QAGhAAAwEBAQEAAAAAAAAAAAAAAAERITFBsf/aAAgBAQABPyGjIQ8QxWPGUZmLI1CE6id6Ddz4E6qf/9oADAMBAAIAAwAAABDgD//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQMBAT8QP//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQIBAT8QP//EAB4QAQEAAgAHAAAAAAAAAAAAAAERACExQWFxgZHR/9oACAEBAAE/EBsmBpjQnJ+dccI2k17YxBgpKPjWP00QKO+C0MSVxTP/2Q==","aspectRatio":1.5151515151515151,"src":"/static/42df3309b7542fea4a5ce3dc0420d247/0cb3d/capa.jpg","srcSet":"/static/42df3309b7542fea4a5ce3dc0420d247/f836f/capa.jpg 200w,\n/static/42df3309b7542fea4a5ce3dc0420d247/2244e/capa.jpg 400w,\n/static/42df3309b7542fea4a5ce3dc0420d247/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"abi/","tags":["Iniciante"],"title":"O que é ABI e para que serve?"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos abordar sobre como importar novas libraries em seu contrato inteligente.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAFwAAAwEAAAAAAAAAAAAAAAAAAAIEA//EABQBAQAAAAAAAAAAAAAAAAAAAAD/2gAMAwEAAhADEAAAAbKNQYYP/8QAGRAAAwEBAQAAAAAAAAAAAAAAAQIREgQQ/9oACAEBAAEFAlM6H2FW5Kii+f/EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQMBAT8BP//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQIBAT8BP//EAB0QAAICAgMBAAAAAAAAAAAAAAERAAIxUQMQEnH/2gAIAQEABj8CIPITazQ1CQ7HUDzPQT+TPX//xAAbEAEBAAMAAwAAAAAAAAAAAAABEQAhMRBBsf/aAAgBAQABPyGhIQ8GKMj01cSQyNmCZCe9Ymz48f/aAAwDAQACAAMAAAAQsM//xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAEDAQE/ED//xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAECAQE/ED//xAAcEAEAAgIDAQAAAAAAAAAAAAABABEhMUFhgdH/2gAIAQEAAT8QG98DZzAnD87j5m2Vr0xiDBSrHzERSKNVvdwGhriKreZ//9k=","aspectRatio":1.5151515151515151,"src":"/static/2a62abdd95304cd5fd33c1a19c456f7c/0cb3d/capa.jpg","srcSet":"/static/2a62abdd95304cd5fd33c1a19c456f7c/f836f/capa.jpg 200w,\n/static/2a62abdd95304cd5fd33c1a19c456f7c/2244e/capa.jpg 400w,\n/static/2a62abdd95304cd5fd33c1a19c456f7c/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"import-e-libraries/","tags":["Iniciante","Intermediário"],"title":"Import e Libraries, para que servem?"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos abordar sobre como criar um novo contrato através do seu contrato inteligente. Os contratos podem ser criados por outros contratos usando a palavra-chave `new`.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAFwAAAwEAAAAAAAAAAAAAAAAAAAIEA//EABQBAQAAAAAAAAAAAAAAAAAAAAD/2gAMAwEAAhADEAAAAbKNQYYP/8QAGhABAAIDAQAAAAAAAAAAAAAAAgERBBASIf/aAAgBAQABBQIzWQ+yTfMml7r/xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAEDAQE/AT//xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAECAQE/AT//xAAdEAACAgIDAQAAAAAAAAAAAAABEQACMVEDEBJx/9oACAEBAAY/AiDyE2s0NQkOx1A8z0E/kz1//8QAGhAAAwADAQAAAAAAAAAAAAAAAAERITFB8f/aAAgBAQABPyGjIQ6QaErjFGZiyMoRAp3YvkaP/9oADAMBAAIAAwAAABDAz//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQMBAT8QP//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQIBAT8QP//EAB0QAQEAAQQDAAAAAAAAAAAAAAERACExUYFBYdH/2gAIAQEAAT8QGz4GnNBPD8940YNJrsmMQYKSj1pkrRIyo4u+bRGswCIteZn/2Q==","aspectRatio":1.5151515151515151,"src":"/static/e1973327d8472088f5afef4099be4829/0cb3d/capa.jpg","srcSet":"/static/e1973327d8472088f5afef4099be4829/f836f/capa.jpg 200w,\n/static/e1973327d8472088f5afef4099be4829/2244e/capa.jpg 400w,\n/static/e1973327d8472088f5afef4099be4829/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"criar-contrato-simples/","tags":["Intermediário"],"title":"Criar um contrato através de outro contrato"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos abordar sobre a utilização das funções `call`, `fallback`, `delegatecall` e chamadas de outros contratos no seu contrato inteligente. Falaremos sobre `call`, `fallback` e `delegatecall`.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAFwAAAwEAAAAAAAAAAAAAAAAAAAIEAf/EABQBAQAAAAAAAAAAAAAAAAAAAAD/2gAMAwEAAhADEAAAAbKHYY0P/8QAGhAAAgMBAQAAAAAAAAAAAAAAAQIAERIEIf/aAAgBAQABBQJTXQ+1VbyRTewT/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPwE//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPwE//8QAHBAAAgICAwAAAAAAAAAAAAAAAREAAjFRAxAh/9oACAEBAAY/AiDyE2s0NQkOx1A8x+Pamev/xAAbEAADAQADAQAAAAAAAAAAAAAAAREhMUFx0f/aAAgBAQABPyGjIQ8INCV0yjMxZGoTCq+hZ+Cprp//2gAMAwEAAgADAAAAEODP/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPxA//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPxA//8QAHRABAQACAQUAAAAAAAAAAAAAAREAIYExQVFh0f/aAAgBAQABPxAbPgac0J2fnvGjBpNckxiDBSUeNY2P1MKPFxkgHGi0O+kz/9k=","aspectRatio":1.5151515151515151,"src":"/static/f1bb916edf32bdc1f9fdbfd9aac26ffe/0cb3d/capa.jpg","srcSet":"/static/f1bb916edf32bdc1f9fdbfd9aac26ffe/f836f/capa.jpg 200w,\n/static/f1bb916edf32bdc1f9fdbfd9aac26ffe/2244e/capa.jpg 400w,\n/static/f1bb916edf32bdc1f9fdbfd9aac26ffe/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"call-fallback-delegatecall/","tags":["Intermediário"],"title":"Call, Fallback, Delegatecall e chamadas de contratos"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos abordar sobre como enviar tokens através das funções `transfer`, `send` e `call` no seu contrato inteligente. Falaremos sobre `transfer`, `send` e `call`.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAGAAAAwEBAAAAAAAAAAAAAAAAAAIEAQP/xAAUAQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIQAxAAAAGyjpowwf/EABoQAAICAwAAAAAAAAAAAAAAAAECERIEECH/2gAIAQEAAQUCUxkPcKs1Ihu6/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPwE//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPwE//8QAGxABAAIDAQEAAAAAAAAAAAAAAQARAjFRAxD/2gAIAQEABj8CR9FyyujkUvJ5C9ywL7U38//EABsQAAIDAAMAAAAAAAAAAAAAAAERACExEEHB/9oACAEBAAE/IWEgjgQkyOlOERBSWINMGL0jv44//9oADAMBAAIAAwAAABCQD//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQMBAT8QP//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQIBAT8QP//EABwQAQADAQADAQAAAAAAAAAAAAEAESGBQVFh0f/aAAgBAQABPxAb3wNnME8P59j5m2VrpjEGClWPMmE0KCu8iDhhkGhfqf/Z","aspectRatio":1.5151515151515151,"src":"/static/7799ef5ecb3f5a41b643fe61d22ff3c2/0cb3d/capa.jpg","srcSet":"/static/7799ef5ecb3f5a41b643fe61d22ff3c2/f836f/capa.jpg 200w,\n/static/7799ef5ecb3f5a41b643fe61d22ff3c2/2244e/capa.jpg 400w,\n/static/7799ef5ecb3f5a41b643fe61d22ff3c2/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"transfer-send-call/","tags":["Iniciante","Intermediário"],"title":"Enviar Ether com transfer, send e call"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos abordar sobre como interagir com interfaces, funções pagáveis e níveis de visibilidade em funções do seu contrato inteligente. Falaremos sobre `visibility`, `interface` e `payable`.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAFwAAAwEAAAAAAAAAAAAAAAAAAAIEA//EABQBAQAAAAAAAAAAAAAAAAAAAAD/2gAMAwEAAhADEAAAAbKNAcYP/8QAGRAAAwEBAQAAAAAAAAAAAAAAAQIREgQQ/9oACAEBAAEFAlM6H2qrclYafP/EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQMBAT8BP//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQIBAT8BP//EAB0QAQABAwUAAAAAAAAAAAAAAAERAAJRAxASMXH/2gAIAQEABj8CR1FuumDFKTc4onuuRE+b/wD/xAAbEAACAgMBAAAAAAAAAAAAAAABEQAxECFBkf/aAAgBAQABPyFjII0EJErjThEQUmxAJAPtpSGPMf/aAAwDAQACAAMAAAAQ4M//xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAEDAQE/ED//xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAECAQE/ED//xAAeEAEBAAIBBQEAAAAAAAAAAAABEQAhgTFBUWFx0f/aAAgBAQABPxAbPgac0J2fz3jRg0muSYxBgpKPGsalCMqPvXN2ylXAIRa+Zn//2Q==","aspectRatio":1.5151515151515151,"src":"/static/0a6ffd21431bc4db8650bc5b9cc7f750/0cb3d/capa.jpg","srcSet":"/static/0a6ffd21431bc4db8650bc5b9cc7f750/f836f/capa.jpg 200w,\n/static/0a6ffd21431bc4db8650bc5b9cc7f750/2244e/capa.jpg 400w,\n/static/0a6ffd21431bc4db8650bc5b9cc7f750/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"visibilidade-interface-pagavel/","tags":["Intermediário"],"title":"Visibilidade, Interfaces e Funções Pagáveis"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos abordar sobre como emitir eventos, declarar construtores e definir heranças no seu contrato inteligente. Falaremos sobre `emit`, `constructor` e `herança`.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAGAAAAwEBAAAAAAAAAAAAAAAAAAIEAQP/xAAUAQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIQAxAAAAGyjtgwwf/EABkQAAMBAQEAAAAAAAAAAAAAAAECERIABP/aAAgBAQABBQJTPQ+wq3ORRSe//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPwE//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPwE//8QAHBAAAgICAwAAAAAAAAAAAAAAAREAAjFRAxAS/9oACAEBAAY/AiDyE2s0NQkOx1A8z0E5nr//xAAcEAACAgIDAAAAAAAAAAAAAAABEQAhEDFBUdH/2gAIAQEAAT8hYSCOghJkcKcIiCksQugDurheBj//2gAMAwEAAgADAAAAELDP/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPxA//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPxA//8QAHRABAQACAgMBAAAAAAAAAAAAAREAIWGBMUFx0f/aAAgBAQABPxAbvgac0J6fznHzNpNdnGIMFJR61gmqIzo++caCAl1iTTvnP//Z","aspectRatio":1.5151515151515151,"src":"/static/0333408d42b5592912022b3f7c2d7b4b/0cb3d/capa.jpg","srcSet":"/static/0333408d42b5592912022b3f7c2d7b4b/f836f/capa.jpg 200w,\n/static/0333408d42b5592912022b3f7c2d7b4b/2244e/capa.jpg 400w,\n/static/0333408d42b5592912022b3f7c2d7b4b/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"evento-construtor-heranca/","tags":["Iniciante","Intermediário"],"title":"Evento, Construtor e Herança"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos abordar sobre como tratar de forma correta os erros de transações e condições no Solidity. Falaremos sobre `require`, `revert` e `assert` para tratar condições e `try / catch` para tratar exceções.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAFwAAAwEAAAAAAAAAAAAAAAAAAAIEA//EABQBAQAAAAAAAAAAAAAAAAAAAAD/2gAMAwEAAhADEAAAAbKNAcYP/8QAGRAAAwEBAQAAAAAAAAAAAAAAAQIREgAE/9oACAEBAAEFAlM9D7Crc4Ghb3//xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAEDAQE/AT//xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAECAQE/AT//xAAdEAABAwUBAAAAAAAAAAAAAAABAAIRAxASMVFB/9oACAEBAAY/AiDUJc6YHESJceITtZerdv/EABkQAAMBAQEAAAAAAAAAAAAAAAABESExQf/aAAgBAQABPyGlIQ8QaMjxlGZiyNQ1MuP7C3TglFrp/9oADAMBAAIAAwAAABCgD//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQMBAT8QP//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQIBAT8QP//EAB0QAQACAgIDAAAAAAAAAAAAAAEAESFRMYFBYdH/2gAIAQEAAT8QG18DZzAnh+e4+Ztla7MYgwUqx6xKgcBItNXMFiduI1SPbP/Z","aspectRatio":1.5151515151515151,"src":"/static/4a8e0c0a498d5d44f5a8d1ad187ebf6d/0cb3d/capa.jpg","srcSet":"/static/4a8e0c0a498d5d44f5a8d1ad187ebf6d/f836f/capa.jpg 200w,\n/static/4a8e0c0a498d5d44f5a8d1ad187ebf6d/2244e/capa.jpg 400w,\n/static/4a8e0c0a498d5d44f5a8d1ad187ebf6d/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"tratamento-de-erros/","tags":["Iniciante","Intermediário"],"title":"Tratamento de erros de condições e exceções"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos abordar sobre as várias formas de trabalhar com funções, modificadores e views no Solidity. Falaremos sobre `function`, `view`, `pure` e `function modifier`.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAGAAAAgMAAAAAAAAAAAAAAAAAAAQBAgP/xAAUAQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIQAxAAAAFxjYJLB//EABkQAAMBAQEAAAAAAAAAAAAAAAECERIEEP/aAAgBAQABBQJTOh9hVuciinz/xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAEDAQE/AT//xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAECAQE/AT//xAAcEAEAAgIDAQAAAAAAAAAAAAABABECUQMQEjH/2gAIAQEABj8CR5FyyujUUvJ1C/s9FXvv/8QAHBAAAgICAwAAAAAAAAAAAAAAAREAIRAxQWGh/9oACAEBAAE/IWEgjoISZHCnCIgpLELoA6rhE35j/9oADAMBAAIAAwAAABCgz//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQMBAT8QP//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQIBAT8QP//EAB4QAQEAAQMFAAAAAAAAAAAAAAERABAhgTFBYXHR/9oACAEBAAE/EBu+BpzYTs/POPmbSa5OMQYKSjxtgUrIxUe8lElNp0af/9k=","aspectRatio":1.5151515151515151,"src":"/static/4ecdc9216caac28feeed6f5ffd8660dc/0cb3d/capa.jpg","srcSet":"/static/4ecdc9216caac28feeed6f5ffd8660dc/f836f/capa.jpg 200w,\n/static/4ecdc9216caac28feeed6f5ffd8660dc/2244e/capa.jpg 400w,\n/static/4ecdc9216caac28feeed6f5ffd8660dc/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"funcoes/","tags":["Iniciante","Intermediário"],"title":"Funções e Modificadores"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos abordar as diversas maneiras de armazenar dados na blockchain com Solidity. Falaremos sobre os tipos `storage`, `memory` e `calldata`.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAFwAAAwEAAAAAAAAAAAAAAAAAAAIEA//EABQBAQAAAAAAAAAAAAAAAAAAAAD/2gAMAwEAAhADEAAAAbKNnFGD/8QAGRAAAwEBAQAAAAAAAAAAAAAAAQISEQQQ/9oACAEBAAEFAlOdD2qrswKw+f/EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQMBAT8BP//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQIBAT8BP//EAB4QAAEDBAMAAAAAAAAAAAAAAAEAAhEDEDFREiFx/9oACAEBAAY/AiDUJc6YGkSJcdITlcup8Wbf/8QAGhAAAgMBAQAAAAAAAAAAAAAAAREAITFB8P/aAAgBAQABPyFjII4EJErinCIgpLEsAGd1PATNuf/aAAwDAQACAAMAAAAQ4M//xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAEDAQE/ED//xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAECAQE/ED//xAAdEAEBAAICAwEAAAAAAAAAAAABEQAhUYExQWHR/9oACAEBAAE/EBs+BpzQnp/PuNGDSa7JjEGCko9awAoKMqOL5zRHfmMBEVcyZ//Z","aspectRatio":1.5151515151515151,"src":"/static/f8c1fa2c67ce70d5b947f1cb41a9484d/0cb3d/capa.jpg","srcSet":"/static/f8c1fa2c67ce70d5b947f1cb41a9484d/f836f/capa.jpg 200w,\n/static/f8c1fa2c67ce70d5b947f1cb41a9484d/2244e/capa.jpg 400w,\n/static/f8c1fa2c67ce70d5b947f1cb41a9484d/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"armazenamento/","tags":["Intermediário"],"title":"Armazenamento de Dados"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos abordar o funcionamento do `struct`, ou em português estruturas, no Solidity.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAFwAAAwEAAAAAAAAAAAAAAAAAAAIEA//EABQBAQAAAAAAAAAAAAAAAAAAAAD/2gAMAwEAAhADEAAAAbKN2FGD/8QAGRAAAwEBAQAAAAAAAAAAAAAAAQISEQQQ/9oACAEBAAEFAlOdD2FXZkVh8//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQMBAT8BP//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQIBAT8BP//EAB0QAAEEAgMAAAAAAAAAAAAAAAEAAhFRAzEQEiH/2gAIAQEABj8CIOQlzpgUiRLjSE7XbybW+P/EABsQAAICAwEAAAAAAAAAAAAAAAERACEQMUHw/9oACAEBAAE/IWEgjoISZHFOERBSWJqAHaXPAY//2gAMAwEAAgADAAAAEIDP/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPxA//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPxA//8QAHhABAAIBBAMAAAAAAAAAAAAAAQARIRBBYYFx0fD/2gAIAQEAAT8QG98DZzAmz65j5m2VrsxiDBSrHrEzlooDY8z4jT//2Q==","aspectRatio":1.5151515151515151,"src":"/static/31259dbbe7dc24376524542a7b5803a7/0cb3d/capa.jpg","srcSet":"/static/31259dbbe7dc24376524542a7b5803a7/f836f/capa.jpg 200w,\n/static/31259dbbe7dc24376524542a7b5803a7/2244e/capa.jpg 400w,\n/static/31259dbbe7dc24376524542a7b5803a7/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"estruturas/","tags":["Iniciante","Intermediário"],"title":"Estruturas - Struct"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos abordar o funcionamento do `enum` no Solidity. O Solidity suporta os enumeradores e eles são muito úteis para modelar a escolha e acompanhar o estado do seu contrato inteligente.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAGAAAAwEBAAAAAAAAAAAAAAAAAAEEAgP/xAAUAQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIQAxAAAAGyjuxGg//EABkQAAMBAQEAAAAAAAAAAAAAAAECEhEEEP/aAAgBAQABBQJTnQ9hV2ZFYfP/xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAEDAQE/AT//xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAECAQE/AT//xAAcEAACAgIDAAAAAAAAAAAAAAABEQACMVEDEBL/2gAIAQEABj8CIPITazQ1CQ7HUDzPQT3M9f/EABsQAAICAwEAAAAAAAAAAAAAAAERACEQMUHw/9oACAEBAAE/IWEgjoISZHFOERBSWJqAdpc8Rj//2gAMAwEAAgADAAAAEJDP/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPxA//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPxA//8QAHxABAAIBAwUAAAAAAAAAAAAAAQARIRAxgUFRYXHR/9oACAEBAAE/EBvfA2cwJ0fnmPmbZWuTGIMFKseMTOSigNj3MFbu9NP/2Q==","aspectRatio":1.5151515151515151,"src":"/static/89111c8f919cd99d55925f9bacb78cbd/0cb3d/capa.jpg","srcSet":"/static/89111c8f919cd99d55925f9bacb78cbd/f836f/capa.jpg 200w,\n/static/89111c8f919cd99d55925f9bacb78cbd/2244e/capa.jpg 400w,\n/static/89111c8f919cd99d55925f9bacb78cbd/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"enum/","tags":["Iniciante","Intermediário"],"title":"Enum - Enumeradores"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos abordar como funcionam os `mapping` e `arrays` no Solidity, bem como, quando utilizá-los em seu contrato inteligente.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAFwAAAwEAAAAAAAAAAAAAAAAAAAIEA//EABQBAQAAAAAAAAAAAAAAAAAAAAD/2gAMAwEAAhADEAAAAbKN2FGD/8QAGRAAAgMBAAAAAAAAAAAAAAAAAhEBBBIQ/9oACAEBAAEFAhlWD2Ii85h8/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPwE//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPwE//8QAGxABAAIDAQEAAAAAAAAAAAAAAQARAjFRAxD/2gAIAQEABj8CR9FyyujkUvJ5C9ywL7N/P//EABwQAAICAgMAAAAAAAAAAAAAAAERACEQMUFR8f/aAAgBAQABPyFjII6CUrHCnCIgpLE1YPpcR8Y//9oADAMBAAIAAwAAABDAz//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQMBAT8QP//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQIBAT8QP//EAB8QAQEAAgEEAwAAAAAAAAAAAAERACFBEDFRYYGR0f/aAAgBAQABPxAbJgaY0Jw/nvHCNpNfbGIMFJR+NZvkaJKjxc33sOI6f//Z","aspectRatio":1.5151515151515151,"src":"/static/2850ed1823770eb7913a15c4620cb2da/0cb3d/capa.jpg","srcSet":"/static/2850ed1823770eb7913a15c4620cb2da/f836f/capa.jpg 200w,\n/static/2850ed1823770eb7913a15c4620cb2da/2244e/capa.jpg 400w,\n/static/2850ed1823770eb7913a15c4620cb2da/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"mapping-arrays/","tags":["Iniciante"],"title":"Mapping e Arrays"}},{"frontmatter":{"author":["Matheus"],"description":"Entenda como funcionam as instruções condicionais e loops. Nesse artigo iremos abordar o funcionamento das instruções condicionais `if`, `else` e os loops `for`, `while` e `do while` no Solidity.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAFwAAAwEAAAAAAAAAAAAAAAAAAAIEA//EABQBAQAAAAAAAAAAAAAAAAAAAAD/2gAMAwEAAhADEAAAAbKN2FGD/8QAGRAAAgMBAAAAAAAAAAAAAAAAAhIBBBEQ/9oACAEBAAEFAhnLBuIjqrDc/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPwE//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPwE//8QAHRAAAQQCAwAAAAAAAAAAAAAAAQACEVEDMRASQf/aAAgBAQAGPwIg5CXOmBSJEuNITtdvbW+P/8QAHBABAAMAAgMAAAAAAAAAAAAAAQARIRAxQVHx/9oACAEBAAE/IbGQo9CYrHhlxJDVNJsAD9NlPxx//9oADAMBAAIAAwAAABDAz//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQMBAT8QP//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQIBAT8QP//EAB4QAQEAAgICAwAAAAAAAAAAAAERACFhgTFBcZHR/9oACAEBAAE/EBsmBpjQnp/OccI2k19sYgwUlHrWax5EGj5xfxHTJNO+c//Z","aspectRatio":1.5151515151515151,"src":"/static/c841a7f5556990d221914149075e5ebf/0cb3d/capa.jpg","srcSet":"/static/c841a7f5556990d221914149075e5ebf/f836f/capa.jpg 200w,\n/static/c841a7f5556990d221914149075e5ebf/2244e/capa.jpg 400w,\n/static/c841a7f5556990d221914149075e5ebf/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"if-else-for-while/","tags":["Iniciante"],"title":"If, Else, For e While"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos falar um pouco sobre as taxas de gas da blockchain e como economizar na hora de escrever seu contrato inteligente. Na rede da Ethereum, as transações são pagas com Ether, assim como na rede da Binance Smart Chain, as transações são pagas com BNB, na rede da Polygon as transações são pagas com MATIC e assim por diante.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAFwAAAwEAAAAAAAAAAAAAAAAAAAIEA//EABQBAQAAAAAAAAAAAAAAAAAAAAD/2gAMAwEAAhADEAAAAbKN2FGD/8QAGRAAAgMBAAAAAAAAAAAAAAAAAhIBBBEQ/9oACAEBAAEFAhnLBuIjqrDc/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPwE//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPwE//8QAGxAAAgIDAQAAAAAAAAAAAAAAAREAAgMxURD/2gAIAQEABj8CIOQm1mhyEh2PIHuNB9m/P//EABoQAAIDAQEAAAAAAAAAAAAAAAERACExQRD/2gAIAQEAAT8hYyCOBKVjinCIgpLEyQdpcR8f/9oADAMBAAIAAwAAABDAz//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQMBAT8QP//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQIBAT8QP//EACAQAQEAAQIHAQAAAAAAAAAAAAERACGREDFBUWGBodH/2gAIAQEAAT8QGyYGmNBOj+eccI2k1uxiDBSUfWma5zIBo7XPuvI24f/Z","aspectRatio":1.5151515151515151,"src":"/static/70e5a31a625fdd9f843734a36ece7ed2/0cb3d/capa.jpg","srcSet":"/static/70e5a31a625fdd9f843734a36ece7ed2/f836f/capa.jpg 200w,\n/static/70e5a31a625fdd9f843734a36ece7ed2/2244e/capa.jpg 400w,\n/static/70e5a31a625fdd9f843734a36ece7ed2/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"ether-wei-gas/","tags":["Iniciante"],"title":"Ether, Wei e Taxa de Gas"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse artigo iremos falar um pouco sobre os tipos de variáveis, como acessá-las e onde definí-las. Conheça os diferentes tipos de variáveis e suas aplicações.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAGAAAAwEBAAAAAAAAAAAAAAAAAAEEAgP/xAAUAQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIQAxAAAAGyjuxGg//EABkQAAMBAQEAAAAAAAAAAAAAAAECEhEEEP/aAAgBAQABBQJTnQ9qq7MisPn/xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAEDAQE/AT//xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAECAQE/AT//xAAcEAACAgIDAAAAAAAAAAAAAAABEQACMVEDEBL/2gAIAQEABj8CIPITazQ1CQ7HUDzPSD3M9f/EABsQAAICAwEAAAAAAAAAAAAAAAERACEQMUHw/9oACAEBAAE/IWMgjoJSscU4REFJYmoB2lmeAx//2gAMAwEAAgADAAAAENDP/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPxA//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPxA//8QAHxABAQABAgcAAAAAAAAAAAAAAREAECFBUWGBkdHw/9oACAEBAAE/EBsmBpjYTg+uuOEbSa8sYgwUlHttm+UiAYcrnxGn/9k=","aspectRatio":1.5151515151515151,"src":"/static/3ca33f6c84b50f6e50e5d109a291ac67/0cb3d/capa.jpg","srcSet":"/static/3ca33f6c84b50f6e50e5d109a291ac67/f836f/capa.jpg 200w,\n/static/3ca33f6c84b50f6e50e5d109a291ac67/2244e/capa.jpg 400w,\n/static/3ca33f6c84b50f6e50e5d109a291ac67/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"variaveis/","tags":["Iniciante"],"title":"Entendendo as Variáveis"}},{"frontmatter":{"author":["Matheus"],"description":"Nesse exemplo iremos criar nosso primeiro aplicativo, onde iremos obter, incrementar e decrementar o valor de um contador.","image":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAFwAAAwEAAAAAAAAAAAAAAAAAAAIEA//EABQBAQAAAAAAAAAAAAAAAAAAAAD/2gAMAwEAAhADEAAAAbKNnFGD/8QAGRAAAwEBAQAAAAAAAAAAAAAAAQISEQQQ/9oACAEBAAEFAlOdD2qrswKw+f/EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQMBAT8BP//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQIBAT8BP//EAB0QAAICAgMBAAAAAAAAAAAAAAERAAIxUQMQEiH/2gAIAQEABj8CIPITazQ1CQ7HUDzPXx7Uz1//xAAcEAEAAwACAwAAAAAAAAAAAAABABEhEDFBcfD/2gAIAQEAAT8hsZCj0JiseGXEkNU0mgAfsnwOP//aAAwDAQACAAMAAAAQ4M//xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAEDAQE/ED//xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAECAQE/ED//xAAfEAEBAAIABwEAAAAAAAAAAAABEQAhQVFhcYGR0fD/2gAIAQEAAT8QGyYGmNCcH51xwjaTXtjEGCko+NZokEQNO+fiMBCLXnM//9k=","aspectRatio":1.5151515151515151,"src":"/static/c54c6153f2ebe7f53c5437c4799b3683/0cb3d/capa.jpg","srcSet":"/static/c54c6153f2ebe7f53c5437c4799b3683/f836f/capa.jpg 200w,\n/static/c54c6153f2ebe7f53c5437c4799b3683/2244e/capa.jpg 400w,\n/static/c54c6153f2ebe7f53c5437c4799b3683/0cb3d/capa.jpg 536w","sizes":"(max-width: 536px) 100vw, 536px"}}},"layout":"BlogPage","suburl":"primeiro-aplicativo/","tags":["Iniciante","Aplicações"],"title":"Meu primeiro aplicativo"}}]},"topicsYaml":{"topics":[{"desc":"Todos os conteúdos de nível iniciante estão disponíveis aqui","title":"Iniciante","url":"iniciante/","logo":"<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"50\" height=\"50\" viewBox=\"0 -2 15 17\" fill=\"none\"><style>.a{fill:#65AFFF;}</style> <path d=\"M1 2.828c.885-.37 2.154-.769 3.388-.893 1.33-.134 2.458.063 3.112.752v9.746c-.935-.53-2.12-.603-3.213-.493-1.18.12-2.37.461-3.287.811V2.828zm7.5-.141c.654-.689 1.782-.886 3.112-.752 1.234.124 2.503.523 3.388.893v9.923c-.918-.35-2.107-.692-3.287-.81-1.094-.111-2.278-.039-3.213.492V2.687zM8 1.783C7.015.936 5.587.81 4.287.94c-1.514.153-3.042.672-3.994 1.105A.5.5 0 0 0 0 2.5v11a.5.5 0 0 0 .707.455c.882-.4 2.303-.881 3.68-1.02 1.409-.142 2.59.087 3.223.877a.5.5 0 0 0 .78 0c.633-.79 1.814-1.019 3.222-.877 1.378.139 2.8.62 3.681 1.02A.5.5 0 0 0 16 13.5v-11a.5.5 0 0 0-.293-.455c-.952-.433-2.48-.952-3.994-1.105C10.413.809 8.985.936 8 1.783z\" class=\"a\"/> </svg>"},{"desc":"Todos os conteúdos de nível intermediário estão disponíveis aqui","title":"Intermediário","url":"intermediario/","logo":"<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"50\" height=\"50\" viewBox=\"0 -1 15 17\" fill=\"none\"><style>.a{fill:#65AFFF;}</style> <path fill-rule=\"evenodd\" d=\"M8.646 5.646a.5.5 0 0 1 .708 0l2 2a.5.5 0 0 1 0 .708l-2 2a.5.5 0 0 1-.708-.708L10.293 8 8.646 6.354a.5.5 0 0 1 0-.708zm-1.292 0a.5.5 0 0 0-.708 0l-2 2a.5.5 0 0 0 0 .708l2 2a.5.5 0 0 0 .708-.708L5.707 8l1.647-1.646a.5.5 0 0 0 0-.708z\" class=\"a\"/> <path d=\"M3 0h10a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2v-1h1v1a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1v1H1V2a2 2 0 0 1 2-2z\" class=\"a\"/> <path d=\"M1 5v-.5a.5.5 0 0 1 1 0V5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1zm0 3v-.5a.5.5 0 0 1 1 0V8h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1zm0 3v-.5a.5.5 0 0 1 1 0v.5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1z\" class=\"a\"/> </svg>"},{"desc":"Todos os conteúdos de nível avançado estão disponíveis aqui","title":"Avançado","url":"avancado/","logo":"<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"50\" height=\"50\" viewBox=\"0 0 50 50\" fill=\"none\"><style>.a{fill:#65AFFF;}</style> <path d=\"M49.2 16.1H45.8V11.6C45.8 11.4 45.7 11.1 45.6 11 45.4 10.8 45.2 10.7 45 10.7 43.9 10.7 42.7 10.8 41.6 10.9L41.7 12.6C42.5 12.6 43.3 12.5 44.2 12.5V39C37.8 39 31.5 40.7 25.8 43.9V32.1H24.2V43.9C18.5 40.7 12.2 39 5.8 39V12.5C6.7 12.5 7.5 12.6 8.3 12.6L8.4 10.9C7.3 10.8 6.1 10.7 5 10.7 4.8 10.7 4.6 10.8 4.4 11 4.3 11.1 4.2 11.4 4.2 11.6V16.1H0.8C0.6 16.1 0.4 16.2 0.2 16.3 0.1 16.5 0 16.7 0 17V49.1C0 49.3 0.1 49.6 0.2 49.7 0.4 49.9 0.6 50 0.8 50H49.2C49.4 50 49.6 49.9 49.8 49.7 49.9 49.6 50 49.3 50 49.1V17C50 16.7 49.9 16.5 49.8 16.3 49.6 16.2 49.4 16.1 49.2 16.1ZM45 40.8C45.2 40.8 45.4 40.7 45.6 40.5 45.7 40.3 45.8 40.1 45.8 39.9V17.9H48.3V44.6H28.2C33.5 42 39.2 40.7 45 40.8ZM1.7 17.9H4.2V39.9C4.2 40.1 4.3 40.3 4.4 40.5 4.6 40.7 4.8 40.8 5 40.8 10.8 40.7 16.5 42 21.8 44.6H1.7V17.9ZM1.7 48.2V46.4H48.3V48.2H1.7Z\" class=\"a\"/> <path d=\"M35.8 5C35.6 4.1 35.2 3.3 34.5 2.7 33.8 2.1 33 1.7 32.1 1.7 31.7 1.7 31.3 1.8 30.9 1.9 30.6 1.3 30.2 0.9 29.6 0.5 29.1 0.2 28.5 0 27.9 0 27.3 0 26.8 0.2 26.3 0.4 25.8 0.7 25.3 1.1 25 1.6 24.7 1.1 24.2 0.7 23.7 0.4 23.2 0.2 22.7 0 22.1 0 21.5 0 20.9 0.2 20.4 0.5 19.8 0.9 19.4 1.3 19.1 1.9 18.7 1.8 18.3 1.7 17.9 1.7 17 1.7 16.2 2.1 15.5 2.7 14.8 3.3 14.4 4.1 14.3 5 13.2 5.1 12.3 5.6 11.6 6.4 10.9 7.2 10.6 8.2 10.6 9.3 10.6 9.8 10.7 10.3 10.8 10.8 10.3 11.2 9.9 11.7 9.6 12.3 9.4 12.9 9.2 13.5 9.2 14.2 9.1 14.9 9.3 15.5 9.5 16.1 9.8 16.7 10.1 17.3 10.6 17.7 10.1 18.4 9.9 19.3 9.9 20.2 9.9 21 10.1 21.8 10.5 22.5 10.8 23.2 11.4 23.7 12 24.1 12 24.2 12 24.3 12 24.4 12 25.5 12.4 26.6 13.1 27.4 13.7 28.2 14.7 28.6 15.7 28.7 16.4 28.7 17.1 28.4 17.7 28 18.1 28.7 18.6 29.3 19.2 29.7 19.8 30.1 20.6 30.3 21.3 30.4 22 30.4 22.8 30.2 23.4 29.8 24.1 29.5 24.6 28.9 25 28.2 25.4 28.9 25.9 29.5 26.6 29.8 27.2 30.2 28 30.4 28.7 30.4 29.4 30.3 30.2 30.1 30.8 29.7 31.4 29.3 31.9 28.7 32.3 28 32.9 28.4 33.6 28.7 34.3 28.7 35.3 28.6 36.3 28.2 37 27.4 37.6 26.6 38 25.5 38 24.4 38 24.3 38 24.2 38 24.1 38.6 23.7 39.2 23.2 39.6 22.5 39.9 21.8 40.1 21 40.1 20.2 40.1 19.3 39.9 18.4 39.4 17.7 39.9 17.3 40.2 16.7 40.5 16.1 40.7 15.5 40.9 14.9 40.8 14.2 40.8 13.5 40.6 12.9 40.4 12.3 40.1 11.7 39.7 11.2 39.2 10.8 39.3 10.3 39.4 9.8 39.4 9.3 39.4 8.2 39.1 7.2 38.4 6.4 37.7 5.6 36.8 5.1 35.8 5ZM21.4 28.6C20.8 28.5 20.2 28.3 19.7 27.9 19.3 27.4 18.9 26.8 18.8 26.2 18.8 26 18.7 25.9 18.6 25.8 18.5 25.6 18.3 25.6 18.1 25.5 18.1 25.5 18.1 25.5 18 25.5 17.9 25.5 17.7 25.6 17.6 25.6 17.5 25.7 17.4 25.8 17.3 25.9 17.1 26.2 16.9 26.4 16.6 26.6 16.4 26.8 16 26.9 15.7 26.9 15.1 26.8 14.6 26.6 14.2 26.1 13.9 25.6 13.7 25 13.7 24.4 13.7 24.2 13.7 24 13.8 23.7 13.8 23.6 13.8 23.5 13.8 23.4 13.8 23.3 13.7 23.1 13.7 23 13.6 22.9 13.6 22.9 13.5 22.8 13.4 22.7 13.3 22.7 13.2 22.6 12.7 22.5 12.3 22.2 12 21.7 11.7 21.3 11.5 20.8 11.5 20.2 11.5 19.8 11.6 19.5 11.8 19.1 11.9 18.8 12.1 18.4 12.4 18.2 12.5 18.1 12.6 18 12.7 17.8 12.7 17.7 12.8 17.5 12.7 17.4 12.7 17.2 12.7 17.1 12.6 16.9 12.5 16.8 12.3 16.7 12.2 16.7 11.8 16.5 11.5 16.1 11.2 15.7 11 15.3 10.8 14.8 10.8 14.3 10.8 13.8 11 13.4 11.2 13 11.5 12.5 11.8 12.2 12.2 12 12.3 12 12.4 11.9 12.5 11.8 12.6 11.7 12.7 11.6 12.7 11.5 12.7 11.3 12.8 11.2 12.7 11.1 12.7 10.9 12.7 10.8 12.6 10.7 12.4 10.3 12.3 9.8 12.3 9.3 12.2 8.7 12.4 8.1 12.8 7.6 13.2 7.2 13.7 6.9 14.3 6.8 14.5 6.8 14.6 6.9 14.8 6.9 14.9 7 15 7 15.2 6.9 15.3 6.9 15.4 6.9 15.5 6.8 15.6 6.7 15.7 6.6 15.8 6.4 15.8 6.3 15.8 6.2 15.8 6 15.8 6 15.8 6 15.8 5.9 15.8 5.3 16 4.7 16.4 4.3 16.8 3.8 17.3 3.5 17.9 3.5 18.3 3.5 18.6 3.6 19 3.9 19.1 4 19.2 4 19.3 4 19.5 4.1 19.6 4 19.7 4 19.8 4 20 3.9 20 3.8 20.1 3.7 20.2 3.6 20.3 3.4 20.4 3 20.6 2.6 20.9 2.3 21.3 2 21.7 1.8 22.1 1.8 22.6 1.8 23.1 2 23.4 2.3 23.8 2.7 24 3.2 24.1 3.7 24.1 3.7 24.1 3.8 24.2 3.9V25.3C24.2 26.1 23.9 26.9 23.4 27.5 22.9 28.1 22.2 28.5 21.4 28.6ZM37.8 16.7C37.7 16.7 37.5 16.8 37.4 16.9 37.3 17.1 37.3 17.2 37.3 17.4 37.2 17.5 37.3 17.7 37.3 17.8 37.4 18 37.5 18.1 37.6 18.2 37.9 18.4 38.1 18.8 38.2 19.1 38.4 19.5 38.5 19.8 38.5 20.2 38.5 20.8 38.3 21.3 38 21.7 37.7 22.2 37.3 22.5 36.8 22.6 36.7 22.7 36.6 22.7 36.5 22.8 36.4 22.9 36.4 22.9 36.3 23 36.3 23.1 36.2 23.3 36.2 23.4 36.2 23.5 36.2 23.6 36.2 23.7 36.3 24 36.3 24.2 36.3 24.4 36.3 25 36.1 25.6 35.8 26.1 35.4 26.6 34.9 26.8 34.3 26.9 34 26.9 33.6 26.8 33.4 26.6 33.1 26.4 32.9 26.2 32.7 25.9 32.6 25.8 32.5 25.7 32.3 25.6 32.2 25.5 32 25.5 31.9 25.5 31.7 25.6 31.5 25.6 31.4 25.7 31.3 25.9 31.2 26 31.2 26.2 31.1 26.8 30.7 27.4 30.3 27.9 29.8 28.3 29.2 28.5 28.6 28.6 27.8 28.5 27.1 28.1 26.6 27.5 26.1 26.9 25.8 26.1 25.8 25.3V3.9C25.9 3.8 25.9 3.7 25.9 3.7 26 3.2 26.2 2.7 26.6 2.3 26.9 2 27.4 1.8 27.9 1.8 28.3 1.8 28.7 2 29.1 2.3 29.4 2.6 29.6 3 29.8 3.4 29.8 3.6 29.9 3.7 30 3.8 30 3.9 30.2 4 30.3 4 30.4 4 30.5 4.1 30.7 4 30.8 4 30.9 4 31 3.9 31.4 3.6 31.7 3.5 32.1 3.5 32.7 3.5 33.2 3.8 33.6 4.2 34 4.7 34.2 5.3 34.2 5.9 34.2 5.9 34.2 6 34.2 6 34.1 6.2 34.2 6.3 34.2 6.4 34.3 6.6 34.4 6.7 34.5 6.8 34.6 6.8 34.7 6.9 34.8 6.9 35 7 35.1 7 35.2 6.9 35.4 6.9 35.5 6.8 35.7 6.8 36.3 6.9 36.8 7.1 37.2 7.6 37.6 8.1 37.8 8.7 37.7 9.3 37.7 9.8 37.6 10.3 37.4 10.7 37.3 10.8 37.3 10.9 37.3 11.1 37.2 11.2 37.3 11.3 37.3 11.5 37.3 11.6 37.4 11.7 37.5 11.8 37.6 11.9 37.7 12 37.8 12 38.2 12.2 38.5 12.5 38.8 13 39 13.4 39.2 13.8 39.2 14.3 39.2 14.8 39 15.3 38.8 15.7 38.5 16.1 38.2 16.4 37.8 16.7L37.8 16.7Z\" class=\"a\"/> <path d=\"M20.8 16.1C20.8 15.6 20.7 15.1 20.5 14.6 20.3 14.1 20 13.7 19.7 13.4 20 13.1 20.3 12.7 20.5 12.2 20.7 11.7 20.8 11.2 20.8 10.7H19.2C19.2 11.2 19 11.6 18.7 12 18.4 12.3 17.9 12.5 17.5 12.5 17.1 12.5 16.6 12.3 16.3 12 16 11.6 15.8 11.2 15.8 10.7H14.2C14.2 11.7 14.5 12.6 15.1 13.2 15.8 13.9 16.6 14.3 17.5 14.3 17.9 14.3 18.4 14.5 18.7 14.8 19 15.1 19.2 15.6 19.2 16.1H20.8Z\" class=\"a\"/> <path d=\"M19.2 19.6V21.4C19.4 21.4 19.6 21.4 19.8 21.5 20.1 21.6 20.3 21.7 20.4 21.9 20.6 22.1 20.7 22.3 20.8 22.5 20.8 22.7 20.9 23 20.8 23.2V24.1H22.5V23.2C22.5 22.7 22.5 22.3 22.3 21.8 22.2 21.4 21.9 21 21.6 20.6 21.3 20.3 20.9 20 20.5 19.8 20.1 19.7 19.6 19.6 19.2 19.6Z\" class=\"a\"/> <path d=\"M14.2 15.2V17C14.5 17 14.9 17.1 15.2 17.3 15.5 17.6 15.7 17.9 15.8 18.3 15.3 18.9 15 19.7 15 20.5 15 21.5 15.4 22.4 16 23.1 16.6 23.7 17.4 24.1 18.3 24.1V22.3C17.9 22.3 17.5 22.1 17.2 21.8 16.8 21.5 16.7 21 16.7 20.5 16.7 20.1 16.8 19.6 17.2 19.3 17.5 18.9 17.9 18.8 18.3 18.8V17C17.9 17 17.5 17 17.2 17.2 16.9 16.6 16.5 16.1 15.9 15.7 15.4 15.4 14.8 15.2 14.2 15.2Z\" class=\"a\"/> <path d=\"M20 6.6C19.7 6.2 19.3 5.9 18.9 5.7 18.4 5.5 18 5.4 17.5 5.4V7.1C17.9 7.1 18.4 7.3 18.7 7.7 19 8 19.2 8.5 19.2 8.9H20.8C20.8 8.5 21 8 21.3 7.7 21.6 7.3 22.1 7.1 22.5 7.1V5.4C22 5.4 21.6 5.5 21.1 5.7 20.7 5.9 20.3 6.2 20 6.6Z\" class=\"a\"/> <path d=\"M27.5 23.2V24.1H29.2V23.2C29.1 23 29.2 22.7 29.2 22.5 29.3 22.3 29.4 22.1 29.6 21.9 29.7 21.7 29.9 21.6 30.2 21.5 30.4 21.4 30.6 21.4 30.8 21.4V19.6C30.4 19.6 29.9 19.7 29.5 19.8 29.1 20 28.7 20.3 28.4 20.6 28.1 21 27.8 21.4 27.7 21.8 27.5 22.3 27.5 22.7 27.5 23.2Z\" class=\"a\"/> <path d=\"M32.8 17.2C32.5 17 32.1 17 31.7 17V18.8C32.1 18.8 32.5 18.9 32.8 19.3 33.2 19.6 33.3 20.1 33.3 20.5 33.3 21 33.2 21.5 32.8 21.8 32.5 22.1 32.1 22.3 31.7 22.3V24.1C32.6 24.1 33.4 23.7 34 23.1 34.6 22.4 35 21.5 35 20.5 35 19.7 34.7 18.9 34.2 18.3 34.3 17.9 34.5 17.6 34.8 17.3 35.1 17.1 35.5 17 35.8 17V15.2C35.2 15.2 34.6 15.4 34.1 15.7 33.5 16.1 33.1 16.6 32.8 17.2Z\" class=\"a\"/> <path d=\"M32.5 12.5C32.1 12.5 31.6 12.3 31.3 12 31 11.6 30.8 11.2 30.8 10.7H29.2C29.2 11.2 29.3 11.7 29.5 12.2 29.7 12.7 30 13.1 30.3 13.4 30 13.7 29.7 14.1 29.5 14.6 29.3 15.1 29.2 15.6 29.2 16.1H30.8C30.8 15.6 31 15.1 31.3 14.8 31.6 14.5 32.1 14.3 32.5 14.3 33.4 14.3 34.2 13.9 34.9 13.2 35.5 12.6 35.8 11.7 35.8 10.7H34.2C34.2 11.2 34 11.6 33.7 12 33.4 12.3 32.9 12.5 32.5 12.5Z\" class=\"a\"/> <path d=\"M29.2 8.9H30.8C30.8 8.5 31 8 31.3 7.7 31.6 7.3 32.1 7.1 32.5 7.1V5.4C32 5.4 31.6 5.5 31.1 5.7 30.7 5.9 30.3 6.2 30 6.6 29.7 6.2 29.3 5.9 28.9 5.7 28.4 5.5 28 5.4 27.5 5.4V7.1C27.9 7.1 28.4 7.3 28.7 7.7 29 8 29.2 8.5 29.2 8.9Z\" class=\"a\"/> <path d=\"M18 34.6C18.6 34.8 19.3 34.9 20 34.9 20.5 34.9 21 34.8 21.5 34.7L20.9 33C20.1 33.2 19.3 33.2 18.6 32.9 18.1 32.7 17.7 32.5 17.4 32.1 17 31.8 16.8 31.4 16.6 30.9L15 31.5C15.3 32.3 15.7 32.9 16.2 33.4 16.7 33.9 17.3 34.3 18 34.6Z\" class=\"a\"/> <path d=\"M12.4 34.2C13.1 36.1 14.5 37.7 16.3 38.6 18.1 39.4 20.1 39.5 22 38.8L21.4 37.1C19.9 37.7 18.4 37.6 17 37 15.6 36.3 14.5 35.1 14 33.5L12.4 34.2Z\" class=\"a\"/> <path d=\"M34.7 31.6L33.1 30.9C32.8 31.8 32.2 32.5 31.4 32.9 30.6 33.3 29.6 33.3 28.8 33L28.2 34.7C28.8 34.9 29.5 35 30.1 35 30.8 35 31.4 34.8 32 34.5 32.6 34.2 33.2 33.8 33.6 33.3 34.1 32.8 34.4 32.2 34.7 31.6Z\" class=\"a\"/> <path d=\"M30.7 39.3C32.2 39.3 33.6 38.8 34.9 37.9 36.1 37 37.1 35.7 37.6 34.2L36 33.5C35.5 35.1 34.4 36.3 33 37 31.6 37.6 30.1 37.7 28.6 37.1L28 38.8C28.9 39.1 29.8 39.3 30.7 39.3Z\" class=\"a\"/> </svg>"},{"desc":"Todos os artigos referentes a exemplos de aplicações do Solidity, estão disponíveis aqui","title":"Aplicações","url":"aplicacoes/","logo":"<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"50\" height=\"50\" viewBox=\"0 -1 15 17\" fill=\"none\"><style>.a{fill:#65AFFF;}</style> <path d=\"M11 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h6zM5 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h6a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H5z\" class=\"a\"/> <path d=\"M8 14a1 1 0 1 0 0-2 1 1 0 0 0 0 2z\" class=\"a\"/> </svg>"},{"desc":"Todos os artigos referentes a exemplos de aplicação de hacks do Solidity, estão disponíveis aqui","title":"Hacks","url":"hacks/","logo":"<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"50\" height=\"50\" viewBox=\"0 -1 15 17\" fill=\"none\"><style>.a{fill:#65AFFF;}</style> <path d=\"M11 1a2 2 0 0 0-2 2v4a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V9a2 2 0 0 1 2-2h5V3a3 3 0 0 1 6 0v4a.5.5 0 0 1-1 0V3a2 2 0 0 0-2-2zM3 8a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1h6a1 1 0 0 0 1-1V9a1 1 0 0 0-1-1H3z\" class=\"a\"/> </svg>"},{"desc":"Todos os artigos referentes a exemplos de aplicação DeFi do Solidity, estão disponíveis aqui","title":"DeFi","url":"defi/","logo":"<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"50\" height=\"50\" viewBox=\"0 -1 15 17\" fill=\"none\"><style>.a{fill:#65AFFF;}</style> <path fill-rule=\"evenodd\" d=\"M6 3.5A1.5 1.5 0 0 1 7.5 2h1A1.5 1.5 0 0 1 10 3.5v1A1.5 1.5 0 0 1 8.5 6v1H14a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-1 0V8h-5v.5a.5.5 0 0 1-1 0V8h-5v.5a.5.5 0 0 1-1 0v-1A.5.5 0 0 1 2 7h5.5V6A1.5 1.5 0 0 1 6 4.5v-1zM8.5 5a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1zM0 11.5A1.5 1.5 0 0 1 1.5 10h1A1.5 1.5 0 0 1 4 11.5v1A1.5 1.5 0 0 1 2.5 14h-1A1.5 1.5 0 0 1 0 12.5v-1zm1.5-.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1zm4.5.5A1.5 1.5 0 0 1 7.5 10h1a1.5 1.5 0 0 1 1.5 1.5v1A1.5 1.5 0 0 1 8.5 14h-1A1.5 1.5 0 0 1 6 12.5v-1zm1.5-.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1zm4.5.5a1.5 1.5 0 0 1 1.5-1.5h1a1.5 1.5 0 0 1 1.5 1.5v1a1.5 1.5 0 0 1-1.5 1.5h-1a1.5 1.5 0 0 1-1.5-1.5v-1zm1.5-.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1z\" class=\"a\"/> </svg>"},{"desc":"Artigos de outras linguagens de programação, exemplos de interação entre a blockchain e aplicativos externos, estão disponíveis aqui","title":"Outros Artigos","url":"artigos/","logo":"<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"50\" height=\"50\" viewBox=\"0 -1 15 17\" fill=\"none\"><style>.a{fill:#65AFFF;}</style> <path d=\"M0 2.5A1.5 1.5 0 0 1 1.5 1h11A1.5 1.5 0 0 1 14 2.5v10.528c0 .3-.05.654-.238.972h.738a.5.5 0 0 0 .5-.5v-9a.5.5 0 0 1 1 0v9a1.5 1.5 0 0 1-1.5 1.5H1.497A1.497 1.497 0 0 1 0 13.5v-11zM12 14c.37 0 .654-.211.853-.441.092-.106.147-.279.147-.531V2.5a.5.5 0 0 0-.5-.5h-11a.5.5 0 0 0-.5.5v11c0 .278.223.5.497.5H12z\" class=\"a\"/> <path d=\"M2 3h10v2H2V3zm0 3h4v3H2V6zm0 4h4v1H2v-1zm0 2h4v1H2v-1zm5-6h2v1H7V6zm3 0h2v1h-2V6zM7 8h2v1H7V8zm3 0h2v1h-2V8zm-3 2h2v1H7v-1zm3 0h2v1h-2v-1zm-3 2h2v1H7v-1zm3 0h2v1h-2v-1z\" class=\"a\"/> </svg>"}]}},"pageContext":{}},"staticQueryHashes":["119291576","2330562257","4065828390"]}